{
 "cells": [
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# FSRS4Anki Optimizer baseline"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "[![open in colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/open-spaced-repetition/fsrs4anki/blob/main/archive/experiment/baseline.ipynb)\n",
    "\n",
    "↑ Click the above button to open the optimizer on Google Colab.\n",
    "\n",
    "> If you can't see the button and are located in the Chinese Mainland, please use a proxy or VPN."
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Upload your **Anki Deck Package (.apkg)** file or **Anki Collection Package (.colpkg)** file on the `Left sidebar -> Files`, drag and drop your file in the current directory (not the `sample_data` directory). \n",
    "\n",
    "No need to include media. Need to include scheduling information. \n",
    "\n",
    "> If you use the latest version of Anki, please check the box `Support older Anki versions (slower/larger files)` when you export.\n",
    "\n",
    "You can export it via `File -> Export...` or `Ctrl + E` in the main window of Anki.\n",
    "\n",
    "Then replace the `filename` with yours in the next code cell. And set the `timezone` and `next_day_starts_at` which can be found in your preferences of Anki.\n",
    "\n",
    "After that, just run all (`Runtime -> Run all` or `Ctrl + F9`) and wait for minutes. You can see the optimal parameters in section **2.3 Result**. Copy them, replace the parameters in `fsrs4anki_scheduler.js`, and paste them into the custom scheduling of your deck options (require Anki version >= 2.1.55).\n",
    "\n",
    "**NOTE**: The default output is generated from my review logs. If you find the output is the same as mine, maybe your notebook hasn't run there.\n",
    "\n",
    "**Contribute to SRS Research**: If you want to share your data with me, please fill this form: https://forms.gle/KaojsBbhMCytaA7h8"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Here are some settings that you need to replace before running this optimizer.\n",
    "\n",
    "filename = \"../collection-2022-09-18@13-21-58.colpkg\"\n",
    "# If you upload deck file, replace it with your deck filename. E.g., ALL__Learning.apkg\n",
    "# If you upload collection file, replace it with your colpgk filename. E.g., collection-2022-09-18@13-21-58.colpkg\n",
    "\n",
    "# Replace it with your timezone. I'm in China, so I use Asia/Shanghai.\n",
    "# You can find your timezone here: https://gist.github.com/heyalexej/8bf688fd67d7199be4a1682b3eec7568\n",
    "timezone = 'Asia/Shanghai'\n",
    "\n",
    "# Replace it with your Anki's setting in Preferences -> Scheduling.\n",
    "next_day_starts_at = 4\n",
    "\n",
    "# Replace it if you don't want the optimizer to use the review logs before a specific date.\n",
    "revlog_start_date = \"2006-10-05\""
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1 Build dataset"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 1.1 Extract Anki collection & deck file"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Extract successfully!\n"
     ]
    }
   ],
   "source": [
    "import zipfile\n",
    "import sqlite3\n",
    "import time\n",
    "from tqdm import notebook\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "import os\n",
    "from datetime import timedelta, datetime\n",
    "import matplotlib.pyplot as plt\n",
    "import math\n",
    "import sys\n",
    "import torch\n",
    "from torch import nn\n",
    "from sklearn.utils import shuffle\n",
    "# Extract the collection file or deck file to get the .anki21 database.\n",
    "with zipfile.ZipFile(f'./{filename}', 'r') as zip_ref:\n",
    "    zip_ref.extractall('./')\n",
    "    print(\"Extract successfully!\")"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 1.2 Create time-series feature & analysis\n",
    "\n",
    "The following code cell will extract the review logs from your Anki collection and preprocess them to a trainset which is saved in [./revlog_history.tsv](./revlog_history.tsv).\n",
    "\n",
    "The time-series features are important in optimizing the model's parameters. For more detail, please see my paper: https://www.maimemo.com/paper/\n",
    "\n",
    "Then it will generate a concise analysis for your review logs. \n",
    "\n",
    "- The `r_history` is the history of ratings on each review. `3,3,3,1` means that you press `Good, Good, Good, Again`. It only contains the first rating for each card on the review date, i.e., when you press `Again` in review and  `Good` in relearning steps 10min later, only `Again` will be recorded.\n",
    "- The `avg_interval` is the actual average interval after you rate your cards as the `r_history`. It could be longer than the interval given by Anki's built-in scheduler because you reviewed some overdue cards.\n",
    "- The `avg_retention` is the average retention after you press as the `r_history`. `Again` counts as failed recall, and `Hard, Good and Easy` count as successful recall. Retention is the percentage of your successful recall.\n",
    "- The `stability` is the estimated memory state variable, which is an approximate interval that leads to 90% retention.\n",
    "- The `factor` is `stability / previous stability`.\n",
    "- The `group_cnt` is the number of review logs that have the same `r_history`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "revlog.csv saved.\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "a72c37ef392140458a8a2306fdd7b4bc",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "  0%|          | 0/30711 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Trainset saved.\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "069d426ecd3e4a3b8bd7a680c983d8f0",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "  0%|          | 0/95123 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Retention calculated.\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "37dd0f15507b439fbd6660568780d037",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "  0%|          | 0/63978 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Stability calculated.\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "d5e96202ff2549009d2ac6ad29f83292",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "  0%|          | 0/1190 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1:again, 2:hard, 3:good, 4:easy\n",
      "\n",
      "      r_history  avg_interval  avg_retention  stability  factor  group_cnt\n",
      "              1           1.7          0.765        1.0     inf       7997\n",
      "            1,3           3.9          0.876        4.2    4.20       4176\n",
      "          1,3,3           8.6          0.883        9.2    2.19       2711\n",
      "        1,3,3,3          18.2          0.858       14.0    1.52       1616\n",
      "      1,3,3,3,3          37.5          0.835       23.2    1.66        822\n",
      "    1,3,3,3,3,3          78.8          0.850       35.6    1.53        384\n",
      "  1,3,3,3,3,3,3         122.3          0.903       39.3    1.10        171\n",
      "              2           1.0          0.901        1.1     inf        240\n",
      "            2,3           3.5          0.946        8.3    7.55        201\n",
      "          2,3,3          11.1          0.890        7.1    0.86        160\n",
      "              3           1.5          0.962        5.4     inf       9134\n",
      "            3,3           3.9          0.966       15.2    2.81       6589\n",
      "          3,3,3           9.0          0.960       23.7    1.56       5162\n",
      "        3,3,3,3          19.4          0.942       44.2    1.86       3519\n",
      "      3,3,3,3,3          39.1          0.926       54.5    1.23       1922\n",
      "    3,3,3,3,3,3          76.6          0.930      106.8    1.96       1074\n",
      "  3,3,3,3,3,3,3         118.7          0.949      155.3    1.45        480\n",
      "3,3,3,3,3,3,3,3         131.1          0.970      617.2    3.97        100\n",
      "              4           3.8          0.966       12.1     inf      11599\n",
      "            4,3           8.1          0.975       38.9    3.21       7517\n",
      "          4,3,3          18.0          0.963       56.8    1.46       5303\n",
      "        4,3,3,3          33.3          0.952       84.3    1.48       3012\n",
      "      4,3,3,3,3          48.3          0.953      128.3    1.52       1353\n",
      "    4,3,3,3,3,3          67.3          0.958      112.9    0.88        496\n",
      "  4,3,3,3,3,3,3          77.6          0.978      113.2    1.00        244\n",
      "4,3,3,3,3,3,3,3         112.9          0.984      177.8    1.57        168\n",
      "Analysis saved!\n"
     ]
    }
   ],
   "source": [
    "if os.path.isfile(\"collection.anki21b\"):\n",
    "    os.remove(\"collection.anki21b\")\n",
    "    raise Exception(\n",
    "        \"Please export the file with `support older Anki versions` if you use the latest version of Anki.\")\n",
    "elif os.path.isfile(\"collection.anki21\"):\n",
    "    con = sqlite3.connect(\"collection.anki21\")\n",
    "elif os.path.isfile(\"collection.anki2\"):\n",
    "    con = sqlite3.connect(\"collection.anki2\")\n",
    "else:\n",
    "    raise Exception(\"Collection not exist!\")\n",
    "cur = con.cursor()\n",
    "res = cur.execute(\"SELECT * FROM revlog\")\n",
    "revlog = res.fetchall()\n",
    "\n",
    "df = pd.DataFrame(revlog)\n",
    "df.columns = ['id', 'cid', 'usn', 'r', 'ivl',\n",
    "              'last_lvl', 'factor', 'time', 'type']\n",
    "df = df[(df['cid'] <= time.time() * 1000) &\n",
    "        (df['id'] <= time.time() * 1000) &\n",
    "        (df['r'] > 0)].copy()\n",
    "df['create_date'] = pd.to_datetime(df['cid'] // 1000, unit='s')\n",
    "df['create_date'] = df['create_date'].dt.tz_localize(\n",
    "    'UTC').dt.tz_convert(timezone)\n",
    "df['review_date'] = pd.to_datetime(df['id'] // 1000, unit='s')\n",
    "df['review_date'] = df['review_date'].dt.tz_localize(\n",
    "    'UTC').dt.tz_convert(timezone)\n",
    "df.drop(df[df['review_date'].dt.year < 2006].index, inplace=True)\n",
    "df.sort_values(by=['cid', 'id'], inplace=True, ignore_index=True)\n",
    "type_sequence = np.array(df['type'])\n",
    "time_sequence = np.array(df['time'])\n",
    "df.to_csv(\"revlog.csv\", index=False)\n",
    "print(\"revlog.csv saved.\")\n",
    "df = df[df['type'] != 3].copy()\n",
    "df['real_days'] = df['review_date'] - timedelta(hours=next_day_starts_at)\n",
    "df['real_days'] = pd.DatetimeIndex(df['real_days'].dt.floor('D', ambiguous='infer', nonexistent='shift_forward')).to_julian_date()\n",
    "df.drop_duplicates(['cid', 'real_days'], keep='first', inplace=True)\n",
    "df['delta_t'] = df.real_days.diff()\n",
    "df.dropna(inplace=True)\n",
    "df['delta_t'] = df['delta_t'].astype(dtype=int)\n",
    "df['i'] = 1\n",
    "df['r_history'] = \"\"\n",
    "df['t_history'] = \"\"\n",
    "col_idx = {key: i for i, key in enumerate(df.columns)}\n",
    "\n",
    "\n",
    "# code from https://github.com/L-M-Sherlock/anki_revlog_analysis/blob/main/revlog_analysis.py\n",
    "def get_feature(x):\n",
    "    last_kind = None\n",
    "    for idx, log in enumerate(x.itertuples()):\n",
    "        if last_kind is not None and last_kind in (1, 2) and log.type == 0:\n",
    "            return x.iloc[:idx]\n",
    "        last_kind = log.type\n",
    "        if idx == 0:\n",
    "            if log.type != 0:\n",
    "                return x.iloc[:idx]\n",
    "            x.iloc[idx, col_idx['delta_t']] = 0\n",
    "        if idx == x.shape[0] - 1:\n",
    "            break\n",
    "        x.iloc[idx + 1, col_idx['i']] = x.iloc[idx, col_idx['i']] + 1\n",
    "        x.iloc[idx + 1, col_idx['t_history']] = f\"{x.iloc[idx, col_idx['t_history']]},{x.iloc[idx, col_idx['delta_t']]}\"\n",
    "        x.iloc[idx + 1, col_idx['r_history']] = f\"{x.iloc[idx, col_idx['r_history']]},{x.iloc[idx, col_idx['r']]}\"\n",
    "    return x\n",
    "\n",
    "notebook.tqdm.pandas()\n",
    "df = df.groupby('cid', as_index=False, group_keys=False).progress_apply(get_feature)\n",
    "df = df[df['id'] >= time.mktime(datetime.strptime(revlog_start_date, \"%Y-%m-%d\").timetuple()) * 1000]\n",
    "df[\"t_history\"] = df[\"t_history\"].map(lambda x: x[1:] if len(x) > 1 else x)\n",
    "df[\"r_history\"] = df[\"r_history\"].map(lambda x: x[1:] if len(x) > 1 else x)\n",
    "df.to_csv('revlog_history.tsv', sep=\"\\t\", index=False)\n",
    "print(\"Trainset saved.\")\n",
    "\n",
    "def cal_retention(group: pd.DataFrame) -> pd.DataFrame:\n",
    "    group['retention'] = round(group['r'].map(lambda x: {1: 0, 2: 1, 3: 1, 4: 1}[x]).mean(), 4)\n",
    "    group['total_cnt'] = group.shape[0]\n",
    "    return group\n",
    "\n",
    "df = df.groupby(by=['r_history', 'delta_t'], group_keys=False).progress_apply(cal_retention)\n",
    "print(\"Retention calculated.\")\n",
    "df = df.drop(columns=['id', 'cid', 'usn', 'ivl', 'last_lvl', 'factor', 'time', 'type', 'create_date', 'review_date', 'real_days', 'r', 't_history'])\n",
    "df.drop_duplicates(inplace=True)\n",
    "df['retention'] = df['retention'].map(lambda x: max(min(0.99, x), 0.01))\n",
    "\n",
    "def cal_stability(group: pd.DataFrame) -> pd.DataFrame:\n",
    "    group_cnt = sum(group['total_cnt'])\n",
    "    if group_cnt < 10:\n",
    "        return pd.DataFrame()\n",
    "    group['group_cnt'] = group_cnt\n",
    "    if group['i'].values[0] > 1:\n",
    "        r_ivl_cnt = sum(group['delta_t'] * group['retention'].map(np.log) * pow(group['total_cnt'], 2))\n",
    "        ivl_ivl_cnt = sum(group['delta_t'].map(lambda x: x ** 2) * pow(group['total_cnt'], 2))\n",
    "        group['stability'] = round(np.log(0.9) / (r_ivl_cnt / ivl_ivl_cnt), 1)\n",
    "    else:\n",
    "        group['stability'] = 0.0\n",
    "    group['avg_retention'] = round(sum(group['retention'] * pow(group['total_cnt'], 2)) / sum(pow(group['total_cnt'], 2)), 3)\n",
    "    group['avg_interval'] = round(sum(group['delta_t'] * pow(group['total_cnt'], 2)) / sum(pow(group['total_cnt'], 2)), 1)\n",
    "    del group['total_cnt']\n",
    "    del group['retention']\n",
    "    del group['delta_t']\n",
    "    return group\n",
    "\n",
    "df = df.groupby(by=['r_history'], group_keys=False).progress_apply(cal_stability)\n",
    "print(\"Stability calculated.\")\n",
    "df.reset_index(drop = True, inplace = True)\n",
    "df.drop_duplicates(inplace=True)\n",
    "df.sort_values(by=['r_history'], inplace=True, ignore_index=True)\n",
    "\n",
    "if df.shape[0] > 0:\n",
    "    for idx in notebook.tqdm(df.index):\n",
    "        item = df.loc[idx]\n",
    "        index = df[(df['i'] == item['i'] + 1) & (df['r_history'].str.startswith(item['r_history']))].index\n",
    "        df.loc[index, 'last_stability'] = item['stability']\n",
    "    df['factor'] = round(df['stability'] / df['last_stability'], 2)\n",
    "    df = df[(df['i'] >= 2) & (df['group_cnt'] >= 100)]\n",
    "    df['last_recall'] = df['r_history'].map(lambda x: x[-1])\n",
    "    df = df[df.groupby(['i', 'r_history'], group_keys=False)['group_cnt'].transform(max) == df['group_cnt']]\n",
    "    df.to_csv('./stability_for_analysis.tsv', sep='\\t', index=None)\n",
    "    print(\"1:again, 2:hard, 3:good, 4:easy\\n\")\n",
    "    print(df[df['r_history'].str.contains(r'^[1-4][^124]*$', regex=True)][['r_history', 'avg_interval', 'avg_retention', 'stability', 'factor', 'group_cnt']].to_string(index=False))\n",
    "    print(\"Analysis saved!\")"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2 Optimize parameter"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.1 Define the model\n",
    "\n",
    "FSRS is a time-series model for predicting memory states."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "init_w = [1, 1, 5, 0.5, 0.5, 0.2, 1.4, 0.12, 0.8, 2, 0.2, 0.2, 1]\n",
    "'''\n",
    "w[0]: initial_stability_for_again_answer\n",
    "w[1]: initial_stability_step_per_rating\n",
    "w[2]: initial_difficulty_for_good_answer\n",
    "w[3]: initial_difficulty_step_per_rating\n",
    "w[4]: next_difficulty_step_per_rating\n",
    "w[5]: next_difficulty_reversion_to_mean_speed (used to avoid ease hell)\n",
    "w[6]: next_stability_factor_after_success\n",
    "w[7]: next_stability_stabilization_decay_after_success\n",
    "w[8]: next_stability_retrievability_gain_after_success\n",
    "w[9]: next_stability_factor_after_failure\n",
    "w[10]: next_stability_difficulty_decay_after_success\n",
    "w[11]: next_stability_stability_gain_after_failure\n",
    "w[12]: next_stability_retrievability_gain_after_failure\n",
    "For more details about the parameters, please see: \n",
    "https://github.com/open-spaced-repetition/fsrs4anki/wiki/Free-Spaced-Repetition-Scheduler\n",
    "'''\n",
    "\n",
    "\n",
    "class FSRS(nn.Module):\n",
    "    def __init__(self, w):\n",
    "        super(FSRS, self).__init__()\n",
    "        self.w = nn.Parameter(torch.FloatTensor(w))\n",
    "        self.zero = torch.FloatTensor([0.0])\n",
    "\n",
    "    def forward(self, x, s, d):\n",
    "        '''\n",
    "        :param x: [review interval, review response]\n",
    "        :param s: stability\n",
    "        :param d: difficulty\n",
    "        :return:\n",
    "        '''\n",
    "        if torch.equal(s, self.zero):\n",
    "            # first learn, init memory states\n",
    "            new_s = self.w[0] + self.w[1] * (x[1] - 1)\n",
    "            new_d = self.w[2] - self.w[3] * (x[1] - 3)\n",
    "            new_d = new_d.clamp(1, 10)\n",
    "        else:\n",
    "            r = torch.exp(np.log(0.9) * x[0] / s)\n",
    "            new_d = d - self.w[4] * (x[1] - 3)\n",
    "            new_d = self.mean_reversion(self.w[2], new_d)\n",
    "            new_d = new_d.clamp(1, 10)\n",
    "            # recall\n",
    "            if x[1] > 1:\n",
    "                new_s = s * (1 + torch.exp(self.w[6]) *\n",
    "                             (11 - new_d) *\n",
    "                             torch.pow(s, -self.w[7]) *\n",
    "                             (torch.exp((1 - r) * self.w[8]) - 1))\n",
    "            # forget\n",
    "            else:\n",
    "                new_s = self.w[9] * torch.pow(new_d, -self.w[10]) * torch.pow(\n",
    "                    s, self.w[11]) * torch.exp((1 - r) * self.w[12])\n",
    "        return new_s, new_d\n",
    "\n",
    "    def loss(self, s, t, r):\n",
    "        return - (r * np.log(0.9) * t / s + (1 - r) * torch.log(1 - torch.exp(np.log(0.9) * t / s)))\n",
    "\n",
    "    def mean_reversion(self, init, current):\n",
    "        return self.w[5] * init + (1-self.w[5]) * current\n",
    "\n",
    "\n",
    "class WeightClipper(object):\n",
    "    def __init__(self, frequency=1):\n",
    "        self.frequency = frequency\n",
    "\n",
    "    def __call__(self, module):\n",
    "        if hasattr(module, 'w'):\n",
    "            w = module.w.data\n",
    "            w[0] = w[0].clamp(0.1, 10)\n",
    "            w[1] = w[1].clamp(0.1, 5)\n",
    "            w[2] = w[2].clamp(1, 10)\n",
    "            w[3] = w[3].clamp(0.1, 5)\n",
    "            w[4] = w[4].clamp(0.1, 5)\n",
    "            w[5] = w[5].clamp(0, 0.5)\n",
    "            w[6] = w[6].clamp(0, 2)\n",
    "            w[7] = w[7].clamp(0.01, 0.2)\n",
    "            w[8] = w[8].clamp(0.01, 1.5)\n",
    "            w[9] = w[9].clamp(0.5, 5)\n",
    "            w[10] = w[10].clamp(0.01, 2)\n",
    "            w[11] = w[11].clamp(0.01, 0.9)\n",
    "            w[12] = w[12].clamp(0.01, 2)\n",
    "            module.w.data = w\n",
    "\n",
    "def lineToTensor(line):\n",
    "    ivl = line[0].split(',')\n",
    "    response = line[1].split(',')\n",
    "    tensor = torch.zeros(len(response), 2)\n",
    "    for li, response in enumerate(response):\n",
    "        tensor[li][0] = int(ivl[li])\n",
    "        tensor[li][1] = int(response)\n",
    "    return tensor\n",
    "\n",
    "class Optimizer(object):\n",
    "    def __init__(self, train_set, test_set, n_epoch=1, lr=5e-4) -> None:\n",
    "        self.model = FSRS(init_w)\n",
    "        self.optimizer = torch.optim.Adam(self.model.parameters(), lr=lr)\n",
    "        self.clipper = WeightClipper()\n",
    "        self.train_set = train_set\n",
    "        self.pre_train_set = train_set[train_set['i'] == 2]\n",
    "        self.next_train_set = train_set[train_set['i'] > 2]\n",
    "        self.test_set = test_set\n",
    "        self.n_epoch = n_epoch\n",
    "        epoch_len = len(self.next_train_set)\n",
    "        self.scheduler = torch.optim.lr_scheduler.CosineAnnealingLR(self.optimizer, T_max=epoch_len * n_epoch)\n",
    "        self.avg_train_losses = []\n",
    "        self.avg_eval_losses = []\n",
    "\n",
    "    def states(self, line_tensor):\n",
    "        with torch.no_grad():\n",
    "            output_t = [(self.model.zero, self.model.zero)]\n",
    "            for input_t in line_tensor:\n",
    "                output_t.append(self.model(input_t, *output_t[-1]))\n",
    "            return output_t[-1]\n",
    "\n",
    "    def train(self):\n",
    "        # pretrain\n",
    "        pbar = notebook.tqdm(desc=\"pre-train\", colour=\"red\", total=len(self.pre_train_set))\n",
    "        self.eval()\n",
    "\n",
    "        for i, (_, row) in enumerate(shuffle(self.pre_train_set, random_state=2022).iterrows()):\n",
    "            self.model.train()\n",
    "            self.optimizer.zero_grad()\n",
    "            output_t = [(self.model.zero, self.model.zero)]\n",
    "            for input_t in row['tensor']:\n",
    "                output_t.append(self.model(input_t, *output_t[-1]))\n",
    "            loss = self.model.loss(output_t[-1][0], row['delta_t'], row['y'])\n",
    "            if np.isnan(loss.data.item()):\n",
    "                # Exception Case\n",
    "                print(row, output_t)\n",
    "                raise Exception('error case')\n",
    "            loss.backward()\n",
    "            self.optimizer.step()\n",
    "            self.model.apply(self.clipper)\n",
    "            pbar.update()\n",
    "        pbar.close()\n",
    "        for name, param in self.model.named_parameters():\n",
    "            print(f\"{name}: {list(map(lambda x: round(float(x), 4),param))}\")\n",
    "\n",
    "        epoch_len = len(self.next_train_set)\n",
    "        print_len = max(epoch_len*self.n_epoch // 10, 1)\n",
    "        pbar = notebook.tqdm(desc=\"train\", colour=\"red\", total=epoch_len*self.n_epoch)\n",
    "\n",
    "        for k in range(self.n_epoch):\n",
    "            self.eval()\n",
    "            for i, (_, row) in enumerate(shuffle(self.next_train_set, random_state=2022 + k).iterrows()):\n",
    "                self.model.train()\n",
    "                self.optimizer.zero_grad()\n",
    "                output_t = [(self.model.zero, self.model.zero)]\n",
    "                for input_t in row['tensor']:\n",
    "                    output_t.append(self.model(input_t, *output_t[-1]))\n",
    "                loss = self.model.loss(output_t[-1][0], row['delta_t'], row['y'])\n",
    "                if np.isnan(loss.data.item()):\n",
    "                    # Exception Case\n",
    "                    print(row, output_t)\n",
    "                    raise Exception('error case')\n",
    "                loss.backward()\n",
    "                for param in self.model.parameters():\n",
    "                    param.grad[:2] = torch.zeros(2)\n",
    "                self.optimizer.step()\n",
    "                self.scheduler.step()\n",
    "                self.model.apply(self.clipper)\n",
    "                pbar.update()\n",
    "\n",
    "                if (k * epoch_len + i) % print_len == 0:\n",
    "                    print(f\"iteration: {k * epoch_len + i + 1}\")\n",
    "                    for name, param in self.model.named_parameters():\n",
    "                        print(f\"{name}: {list(map(lambda x: round(float(x), 4),param))}\")\n",
    "                \n",
    "        self.eval()\n",
    "        pbar.close()\n",
    "\n",
    "        w = list(map(lambda x: round(float(x), 4), dict(self.model.named_parameters())['w'].data))\n",
    "        return w\n",
    "\n",
    "    def eval(self):\n",
    "        self.model.eval()\n",
    "        self.train_set.loc[:, 'state'] = self.train_set['tensor'].map(self.states)\n",
    "        self.train_set.loc[:, 'stability'] = self.train_set['state'].apply(lambda x: x[0].item())\n",
    "        self.train_set.loc[:, 'difficulty'] = self.train_set['state'].apply(lambda x: x[1].item())\n",
    "        self.train_set.loc[:, 'p'] = np.exp(np.log(0.9) * self.train_set['delta_t'] / self.train_set['stability'])\n",
    "        self.train_set.loc[:, 'log_loss'] = self.train_set.apply(lambda row: - np.log(row['p']) if row['y'] == 1 else - np.log(1 - row['p']), axis=1)\n",
    "        self.avg_train_losses.append(self.train_set['log_loss'].mean())\n",
    "        print(f\"Loss in trainset: {self.avg_train_losses[-1]:.4f}\")\n",
    "\n",
    "        self.test_set.loc[:, 'state'] = self.test_set['tensor'].map(self.states)\n",
    "        self.test_set.loc[:, 'stability'] = self.test_set['state'].apply(lambda x: x[0].item())\n",
    "        self.test_set.loc[:, 'difficulty'] = self.test_set['state'].apply(lambda x: x[1].item())\n",
    "        self.test_set.loc[:, 'p'] = np.exp(np.log(0.9) * self.test_set['delta_t'] / self.test_set['stability'])\n",
    "        self.test_set.loc[:, 'log_loss'] = self.test_set.apply(lambda row: - np.log(row['p']) if row['y'] == 1 else - np.log(1 - row['p']), axis=1)\n",
    "        self.avg_eval_losses.append(self.test_set['log_loss'].mean())\n",
    "        print(f\"Loss in testset: {self.avg_eval_losses[-1]:.4f}\")\n",
    "\n",
    "    def plot(self):\n",
    "        plt.plot(self.avg_train_losses, label='train')\n",
    "        plt.plot(self.avg_eval_losses, label='test')\n",
    "        plt.xlabel('epoch')\n",
    "        plt.ylabel('loss')\n",
    "        plt.legend()\n",
    "        plt.show()"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.2 Train the model\n",
    "\n",
    "The [./revlog_history.tsv](./revlog_history.tsv) generated before will be used for training the FSRS model."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "febfd0dbbb4340f5872a2206ae94606e",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "  0%|          | 0/223795 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Tensorized!\n",
      "TRAIN: 149196 TEST: 74599\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "2ab15b28d2064c668713949afa93e993",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "pre-train:   0%|          | 0/17371 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Loss in trainset: 0.3386\n",
      "Loss in testset: 0.3439\n",
      "w: [1.0403, 1.5183, 5.0, 0.5, 0.5, 0.2, 1.4, 0.12, 0.8, 2.0, 0.2, 0.2, 1.0]\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "88ec1e5a472b4e5eaa74bd5bb142b846",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "train:   0%|          | 0/395475 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Loss in trainset: 0.3372\n",
      "Loss in testset: 0.3410\n",
      "iteration: 1\n",
      "w: [1.0402, 1.5184, 4.9984, 0.4984, 0.4984, 0.2016, 1.4016, 0.1184, 0.8016, 2.0016, 0.1984, 0.2016, 1.0016]\n",
      "iteration: 39548\n",
      "w: [1.0393, 1.5191, 5.1745, 1.1557, 0.8899, 0.0032, 1.3993, 0.0386, 0.7819, 1.8039, 0.4038, 0.5254, 0.9399]\n",
      "iteration: 79095\n",
      "w: [1.0393, 1.5191, 5.0901, 1.2437, 0.9647, 0.0133, 1.4163, 0.0591, 0.7767, 1.7374, 0.462, 0.5887, 0.8725]\n",
      "iteration: 118642\n",
      "w: [1.0393, 1.5191, 5.0775, 1.3241, 1.0771, 0.0015, 1.4388, 0.103, 0.7893, 1.737, 0.4573, 0.5692, 0.8666]\n",
      "Loss in trainset: 0.3170\n",
      "Loss in testset: 0.3207\n",
      "iteration: 158189\n",
      "w: [1.0393, 1.5191, 5.0105, 1.369, 1.0554, 0.0009, 1.4735, 0.0806, 0.8105, 1.7338, 0.4558, 0.5934, 0.8797]\n",
      "iteration: 197736\n",
      "w: [1.0393, 1.5191, 4.977, 1.3754, 1.1096, 0.005, 1.4596, 0.0897, 0.7872, 1.6985, 0.4877, 0.5739, 0.8823]\n",
      "iteration: 237283\n",
      "w: [1.0393, 1.5191, 4.9072, 1.3545, 1.0633, 0.0106, 1.4823, 0.0895, 0.8035, 1.7304, 0.4513, 0.5683, 0.9053]\n",
      "Loss in trainset: 0.3162\n",
      "Loss in testset: 0.3196\n",
      "iteration: 276830\n",
      "w: [1.0393, 1.5191, 4.8687, 1.322, 1.0771, 0.0096, 1.4851, 0.0888, 0.8002, 1.7117, 0.4657, 0.5793, 0.8887]\n",
      "iteration: 316377\n",
      "w: [1.0393, 1.5191, 4.8731, 1.3379, 1.0964, 0.0041, 1.4731, 0.0994, 0.7856, 1.7227, 0.4538, 0.5897, 0.8926]\n",
      "iteration: 355924\n",
      "w: [1.0393, 1.5191, 4.8701, 1.341, 1.1018, 0.0016, 1.4762, 0.0956, 0.7876, 1.7188, 0.4569, 0.5872, 0.8895]\n",
      "iteration: 395471\n",
      "w: [1.0393, 1.5191, 4.8669, 1.3399, 1.1007, 0.0034, 1.4797, 0.0922, 0.7909, 1.7182, 0.4574, 0.5885, 0.8893]\n",
      "Loss in trainset: 0.3162\n",
      "Loss in testset: 0.3195\n"
     ]
    },
    {
     "data": {
      "image/png": "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/DtYqkmTJq6///3vFT7mze9fqQsdn7e+f6dOnXJ16tTJtWTJEtegQYNcjzzySKX7euI91AxSHSosLGT9+vUkJia677NarSQmJpKamlrhc1JTU8vsDzBs2LBK9/e06hwjQG5uLm3btiUmJuai/6fkbbztPayuuLg4WrRowdChQ1m5cqWnh1Nl2dnZAERERFS6jze/h1U5PvDe30GHw8FHH31EXl4e/fv3r3Afb37/qnJ84J3v30MPPcSIESPOe28q4on3UAGpDmVlZeFwONzNeEs1b9680us1MjMzL2l/T6vOMXbu3Jl//OMf/Oc//+H999/H6XQyYMAA9u/fXxdDrnWVvYc5OTmcPn3aQ6MyT4sWLZgzZw6ffvopn376KTExMQwePJgNGzZ4emgX5XQ6mTRpEldddRVXXHFFpft52+9hqaoenzf+Dm7evJng4GD8/Px44IEH+Oyzz7j88ssr3Ncb379LOT5vfP8++ugjNmzYQHJycpX298R76FNrlUWqqH///mX+z2jAgAF07dqVuXPnMnXqVA+OTKqic+fOdO7c2f39gAED2LVrF6+99hrz5s3z4Mgu7qGHHuLnn3/m+++/9/RQakVVj88bfwc7d+7Mxo0byc7O5t///jdjx45l2bJllYYIb3Mpx+dt719GRgaPPPIIS5YsqdcXkysg1aGoqChsNhuHDx8uc//hw4eJjo6u8DnR0dGXtL+nVecYy/P19eXKK69k586dtTHEOlfZexgaGkpAQICHRlW7+vbtW+9Dx4QJE1iwYAHLly+ndevWF9zX234P4dKOrzxv+B202+107NgRgN69e7Nu3TqmT5/O3Llzz9vXG9+/Szm+8ur7+7d+/XqOHDlCr1693Pc5HA6WL1/OzJkzKSgowGazlXmOJ95DnWKrQ3a7nd69e5OSkuK+z+l0kpKSUum55f79+5fZH2DJkiUXPBftSdU5xvIcDgebN2+mRYsWtTXMOuVt76EZNm7cWG/fP5fLxYQJE/jss8/49ttvadeu3UWf403vYXWOrzxv/B10Op0UFBRU+Jg3vX+VudDxlVff378hQ4awefNmNm7c6N7i4+O588472bhx43nhCDz0Htba5d9SoY8++sjl5+fneuedd1y//PKL6/7773eFh4e7MjMzXS6XyzV69GjXk08+6d5/5cqVLh8fH9df//pX19atW13PPPOMy9fX17V582ZPHcJFXeox/vnPf3Z99dVXrl27drnWr1/vuu2221z+/v6uLVu2eOoQLujUqVOuH3/80fXjjz+6ANerr77q+vHHH1379u1zuVwu15NPPukaPXq0e//du3e7AgMDXY899phr69atrlmzZrlsNptr8eLFnjqEC7rU43vttddcn3/+uWvHjh2uzZs3ux555BGX1Wp1ffPNN546hAv63e9+5woLC3MtXbrUdejQIfeWn5/v3sebfw+rc3ze9jv45JNPupYtW+bas2ePa9OmTa4nn3zSZbFYXF9//bXL5fLu98/luvTj87b3ryLlP8VWH95DBSQPmDFjhqtNmzYuu93u6tu3r2v16tXuxwYNGuQaO3Zsmf3/9a9/uS677DKX3W53devWzbVw4cI6HvGlu5RjnDRpknvf5s2bu4YPH+7asGGDB0ZdNaUfay+/lR7T2LFjXYMGDTrvOXFxcS673e5q37696+23367zcVfVpR7fSy+95OrQoYPL39/fFRER4Ro8eLDr22+/9czgq6CiYwPKvCfe/HtYnePztt/B3/72t662bdu67Ha7q2nTpq4hQ4a4w4PL5d3vn8t16cfnbe9fRcoHpPrwHlpcLper9uanRERERLyPrkESERERKUcBSURERKQcBSQRERGRchSQRERERMpRQBIREREpRwFJREREpBwFJBEREZFyFJBEREREylFAEhExwdKlS7FYLJw8edLTQxEREyggiYiIiJSjgCQiIiJSjgKSiDQITqeT5ORk2rVrR0BAAD179uTf//43cPb018KFC+nRowf+/v7069ePn3/+uUyNTz/9lG7duuHn50dsbCyvvPJKmccLCgp44okniImJwc/Pj44dO/LWW2+V2Wf9+vXEx8cTGBjIgAEDSEtLq90DF5FaoYAkIg1CcnIy7733HnPmzGHLli1MnjyZu+66i2XLlrn3eeyxx3jllVdYt24dTZs25cYbb6SoqAgwgs2tt97KbbfdxubNm3n22Wf505/+xDvvvON+/pgxY/jnP//J66+/ztatW5k7dy7BwcFlxvHUU0/xyiuv8MMPP+Dj48Nvf/vbOjl+ETGXxeVyuTw9CBGRmigoKCAiIoJvvvmG/v37u++/9957yc/P5/777+eaa67ho48+YtSoUQAcP36c1q1b884773Drrbdy5513cvToUb7++mv38x9//HEWLlzIli1b2L59O507d2bJkiUkJiaeN4alS5dyzTXX8M033zBkyBAAFi1axIgRIzh9+jT+/v61/FMQETNpBklEvN7OnTvJz89n6NChBAcHu7f33nuPXbt2ufc7NzxFRETQuXNntm7dCsDWrVu56qqrytS96qqr2LFjBw6Hg40bN2Kz2Rg0aNAFx9KjRw/37RYtWgBw5MiRGh+jiNQtH08PQESkpnJzcwFYuHAhrVq1KvOYn59fmZBUXQEBAVXaz9fX133bYrEAxvVRIuJdNIMkIl7v8ssvx8/Pj/T0dDp27Fhmi4mJce+3evVq9+0TJ06wfft2unbtCkDXrl1ZuXJlmborV67ksssuw2az0b17d5xOZ5lrmkSk4dIMkoh4vZCQEH7/+98zefJknE4nV199NdnZ2axcuZLQ0FDatm0LwHPPPUdkZCTNmzfnqaeeIioqiptvvhmARx99lD59+jB16lRGjRpFamoqM2fO5I033gAgNjaWsWPH8tvf/pbXX3+dnj17sm/fPo4cOcKtt97qqUMXkVqigCQiDcLUqVNp2rQpycnJ7N69m/DwcHr16sUf/vAH9ymuF198kUceeYQdO3YQFxfHf//7X+x2OwC9evXiX//6F08//TRTp06lRYsWPPfcc9x9993u15g9ezZ/+MMfePDBBzl27Bht2rThD3/4gycOV0RqmT7FJiINXuknzE6cOEF4eLinhyMiXkDXIImIiIiUo4AkIiIiUo5OsYmIiIiUoxkkERERkXIUkERERETKUUASERERKUcBSURERKQcBSQRERGRchSQRERERMpRQBIREREpRwFJREREpJz/D5AJ9qaDhz71AAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "TRAIN: 149197 TEST: 74598\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "06e3cf7e055d47d7898032a6243d37ac",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "pre-train:   0%|          | 0/19836 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Loss in trainset: 0.3398\n",
      "Loss in testset: 0.3414\n",
      "w: [1.0331, 2.2403, 5.0, 0.5, 0.5, 0.2, 1.4, 0.12, 0.8, 2.0, 0.2, 0.2, 1.0]\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "1bf5a89527674df49c2463789e47df79",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "train:   0%|          | 0/388083 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Loss in trainset: 0.3364\n",
      "Loss in testset: 0.3388\n",
      "iteration: 1\n",
      "w: [1.0331, 2.2404, 4.9984, 0.5, 0.4984, 0.2016, 1.4016, 0.1184, 0.8016, 2.0016, 0.1984, 0.2016, 1.0016]\n",
      "iteration: 38809\n",
      "w: [1.033, 2.2413, 5.1533, 1.0409, 0.8303, 0.0114, 1.3527, 0.0331, 0.7406, 1.8553, 0.3654, 0.4354, 0.8706]\n",
      "iteration: 77617\n",
      "w: [1.033, 2.2413, 5.1394, 1.1676, 0.9431, 0.016, 1.364, 0.0186, 0.7447, 1.7643, 0.4513, 0.486, 0.8133]\n",
      "iteration: 116425\n",
      "w: [1.033, 2.2413, 5.0833, 1.1623, 0.9905, 0.0072, 1.359, 0.037, 0.7309, 1.7343, 0.4692, 0.5442, 0.8117]\n",
      "Loss in trainset: 0.3169\n",
      "Loss in testset: 0.3153\n",
      "iteration: 155233\n",
      "w: [1.033, 2.2413, 5.0365, 1.1359, 1.0416, 0.0065, 1.4152, 0.0591, 0.7797, 1.7521, 0.4427, 0.5578, 0.8393]\n",
      "iteration: 194041\n",
      "w: [1.033, 2.2413, 5.0288, 1.1682, 1.0547, 0.0045, 1.3896, 0.0578, 0.7467, 1.7321, 0.4565, 0.5778, 0.8367]\n",
      "iteration: 232849\n",
      "w: [1.033, 2.2413, 4.9823, 1.1339, 1.0868, 0.0138, 1.3775, 0.0455, 0.7277, 1.7498, 0.4361, 0.6122, 0.8217]\n",
      "Loss in trainset: 0.3169\n",
      "Loss in testset: 0.3156\n",
      "iteration: 271657\n",
      "w: [1.033, 2.2413, 4.9737, 1.1227, 1.11, 0.0142, 1.3922, 0.0458, 0.7409, 1.737, 0.4452, 0.5869, 0.8164]\n",
      "iteration: 310465\n",
      "w: [1.033, 2.2413, 4.9557, 1.1288, 1.1021, 0.0033, 1.3904, 0.0324, 0.7369, 1.7276, 0.4533, 0.5893, 0.8055]\n",
      "iteration: 349273\n",
      "w: [1.033, 2.2413, 4.9625, 1.1314, 1.1139, 0.0073, 1.3887, 0.037, 0.7345, 1.7367, 0.4435, 0.5971, 0.8109]\n",
      "iteration: 388081\n",
      "w: [1.033, 2.2413, 4.9616, 1.1312, 1.1136, 0.007, 1.3891, 0.0371, 0.7348, 1.7377, 0.4424, 0.5978, 0.8116]\n",
      "Loss in trainset: 0.3167\n",
      "Loss in testset: 0.3154\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkgAAAGwCAYAAABSN5pGAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9hAAAPYQGoP6dpAABfoElEQVR4nO3deVyVZf7/8dc5Bw4gq6CAC4r7lkIKktqi41pOTU0mlmVZ1sw01hTNtEzfqSZ/E83STFM6NdM+tmiLVmOlKampoSKIW+4rqIArKCrLOffvjwNHQVBE4ObA+/l43A8O133d9/ncns7wnvu+7uu2GIZhICIiIiJuVrMLEBEREWlsFJBEREREKlFAEhEREalEAUlERESkEgUkERERkUoUkEREREQqUUASERERqcTL7AI8ldPp5MCBAwQGBmKxWMwuR0RERGrAMAxOnDhB27ZtsVqrP0+kgFRLBw4cICoqyuwyREREpBaysrJo3759tesVkGopMDAQcP0DBwUFmVyNiIiI1ERBQQFRUVHuv+PVUUCqpfLLakFBQQpIIiIiHuZiw2M0SFtERESkEgUkERERkUoUkEREREQq0RgkERGRRsbhcFBSUmJ2GR7J29sbm8122ftRQBIREWkkDMMgJyeH48ePm12KRwsJCSEyMvKy5ilUQBIREWkkysNReHg4LVq00ETEl8gwDE6dOkVeXh4Abdq0qfW+FJBEREQaAYfD4Q5HYWFhZpfjsfz8/ADIy8sjPDy81pfbNEhbRESkESgfc9SiRQuTK/F85f+GlzOOSwFJRESkEdFltctXF/+GCkgiIiIilSggiYiIiFSigCQiIiKNRnR0NC+//LLZZegutkbnyE6w2SEkyuxKREREamTo0KHExsbWSbBJS0vD39//8ou6TApIjc2SF2HDxxDeB7qPgm6joX082PRRiYiIZzIMA4fDgZfXxf+WtW7dugEqujhdYmtsik+CxQp5m2D5P+CdMfDXLvDZFFj/CZw6anaFIiLSQAzD4FRxqSmLYRg1qvGee+5h6dKl/POf/8RisWCxWHj33XexWCx88803DBgwAB8fH5YvX87OnTv52c9+RkREBAEBAcTHx7No0aIK+6t8ic1isfDmm29yyy230KJFC7p168aXX35Zl//MVdJpicbm9o9cIWjHIti2wPXzzHHY8IlrsVih/cCzZ5ci+oBu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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "TRAIN: 149197 TEST: 74598\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "d43df637de6c4cfdaa67d498fb0ada5b",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "pre-train:   0%|          | 0/20733 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Loss in trainset: 0.3426\n",
      "Loss in testset: 0.3358\n",
      "w: [1.8885, 2.0178, 5.0, 0.5, 0.5, 0.2, 1.4, 0.12, 0.8, 2.0, 0.2, 0.2, 1.0]\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "820990bfa8bb427aaeaf13ddbc28bf8f",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "train:   0%|          | 0/385392 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Loss in trainset: 0.3397\n",
      "Loss in testset: 0.3373\n",
      "iteration: 1\n",
      "w: [1.8883, 2.0176, 4.9984, 0.4984, 0.4984, 0.2016, 1.4016, 0.1184, 0.8016, 2.0016, 0.1984, 0.2016, 1.0016]\n",
      "iteration: 38540\n",
      "w: [1.8867, 2.0158, 5.3352, 1.1728, 0.8625, 0.0169, 1.2979, 0.0505, 0.6897, 1.7985, 0.3974, 0.4703, 1.0658]\n",
      "iteration: 77079\n",
      "w: [1.8867, 2.0158, 5.3175, 1.2544, 0.9621, 0.0266, 1.3248, 0.0292, 0.7051, 1.6816, 0.5024, 0.5546, 1.0039]\n",
      "iteration: 115618\n",
      "w: [1.8867, 2.0158, 5.2839, 1.2484, 0.9733, 0.0447, 1.3504, 0.0412, 0.7253, 1.6785, 0.4974, 0.6364, 1.0253]\n",
      "Loss in trainset: 0.3169\n",
      "Loss in testset: 0.3208\n",
      "iteration: 154157\n",
      "w: [1.8867, 2.0158, 5.2967, 1.2488, 1.0446, 0.0307, 1.3209, 0.023, 0.6882, 1.6715, 0.4987, 0.6582, 1.0284]\n",
      "iteration: 192696\n",
      "w: [1.8867, 2.0158, 5.2611, 1.2097, 1.0241, 0.0119, 1.3102, 0.0431, 0.6726, 1.6595, 0.5034, 0.6636, 1.0435]\n",
      "iteration: 231235\n",
      "w: [1.8867, 2.0158, 5.2305, 1.1858, 1.0443, 0.0231, 1.3398, 0.0143, 0.6982, 1.6472, 0.5083, 0.6639, 1.0643]\n",
      "Loss in trainset: 0.3169\n",
      "Loss in testset: 0.3198\n",
      "iteration: 269774\n",
      "w: [1.8867, 2.0158, 5.2338, 1.1795, 1.0687, 0.0173, 1.3499, 0.0187, 0.7057, 1.6644, 0.4855, 0.6611, 1.0858]\n",
      "iteration: 308313\n",
      "w: [1.8867, 2.0158, 5.2463, 1.1822, 1.0769, 0.0148, 1.3364, 0.0293, 0.6909, 1.6472, 0.4994, 0.652, 1.0716]\n",
      "iteration: 346852\n",
      "w: [1.8867, 2.0158, 5.2433, 1.1815, 1.0765, 0.0143, 1.338, 0.0237, 0.6916, 1.6527, 0.4934, 0.6577, 1.0783]\n",
      "iteration: 385391\n",
      "w: [1.8867, 2.0158, 5.2421, 1.1809, 1.0747, 0.016, 1.3389, 0.0225, 0.6925, 1.653, 0.493, 0.6581, 1.0792]\n",
      "Loss in trainset: 0.3168\n",
      "Loss in testset: 0.3201\n"
     ]
    },
    {
     "data": {
      "image/png": "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71BAl5Y/1YZU7/InYcdXsGMRpCZDp9gqTa6JiSDx6x1sS89jW3ou/cLb0LOjREScTAGppekxEk4er9gjFNi9xklOxUUF9YLoG2DTh5D0DNzyRZUm7b2txPcN5uutGczfkEq/qxWQRESai7ofWprfveG45HL5nx2zvwf3UThqrS571DER776VsHdFtU0mxkUC8PmmNIpKaxh8LyIijU4BScRZ2ndxTDsCkDTLMQatkmE9gwj18ySnsISk7VnNXKCISNulgCTiTMMeAndvSEt2jEmqxGI28fuBEQB8suFQc1cnItJmKSCJOJNPMFx8l2N52WzH860qKbvM9v2ubDJya3i0g4iINCoFJBFnu+Re8AyA7B2w5ZMqm7t29GZwVCB2AxakpDZ/fSIibZDTA9K8efOIiorC09OTIUOGsG7duhrbLly4kLi4OAICAvD29iYmJob333+/Qpunn36a3r174+3tTfv27YmPj2ft2rUV2kRFRWEymSq8XnjhhSY5P5Fz8gqA30x3LK94HkqLqzSZENcJgPkbDmFUM1ZJREQal1MD0scff0xCQgJPPfUUKSkpREdHM3r0aLKyqh+MGhgYyBNPPMHq1avZsmULU6dOZerUqXz77bflbS644ALeeOMNtm7dyo8//khUVBRXXHEF2dnZFY41a9YsDh8+XP669957m/RcRWo1+E/gEwI5ByHlvSqbx/YPo53Vwv6jhazff9wJBYqItC0mw4n/HB0yZAiDBg3ijTfeAMButxMZGcm9997LY489VqdjDBw4kLFjxzJ79uxqt+fl5eHv78/SpUsZOXIk4OhBmj59OtOnT29w7WXHzc3Nxc/Pr8HHESm37h34+iHwDob7N4HVu8LmRz7dzCcbUpkY24mXJkY7p0YRERdX17/fTutBKi4uJjk5mfj4+DPFmM3Ex8ezevXqc+5vGAZJSUns3LmTYcOG1fgef//73/H39yc6uuIflBdeeIEOHTpw0UUX8dJLL1FaWlrr+xUVFZGXl1fhJdKoBt7ieDp6QRasfbvK5rLB2l9tPUx+Ue3/vYqIyPlxWkA6cuQINpuNkJCQCutDQkLIyMiocb/c3Fx8fHywWq2MHTuWuXPnMmrUqAptFi1ahI+PD56enrz66qssWbKEjh07lm+/7777+Oijj1i+fDl/+tOfeP7553nkkUdqrTcxMRF/f//yV2Rk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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Training finished!\n"
     ]
    }
   ],
   "source": [
    "dataset = pd.read_csv(\"./revlog_history.tsv\", sep='\\t', index_col=None, dtype={'r_history': str ,'t_history': str} )\n",
    "dataset = dataset[(dataset['i'] > 1) & (dataset['delta_t'] > 0) & (dataset['t_history'].str.count(',0') == 0)]\n",
    "dataset['tensor'] = dataset.progress_apply(lambda x: lineToTensor(list(zip([x['t_history']], [x['r_history']]))[0]), axis=1)\n",
    "dataset['y'] = dataset['r'].map({1: 0, 2: 1, 3: 1, 4: 1})\n",
    "dataset['group'] = dataset['r_history'] + dataset['t_history']\n",
    "print(\"Tensorized!\")\n",
    "\n",
    "from sklearn.model_selection import StratifiedGroupKFold\n",
    "\n",
    "w = []\n",
    "\n",
    "rskf = StratifiedGroupKFold(n_splits=3)\n",
    "for train_index, test_index in rskf.split(dataset, dataset['y'], dataset['group']):\n",
    "    print(\"TRAIN:\", len(train_index), \"TEST:\",  len(test_index))\n",
    "    train_set = dataset.iloc[train_index].copy()\n",
    "    test_set = dataset.iloc[test_index].copy()\n",
    "    optimizer = Optimizer(train_set, test_set, n_epoch=3)\n",
    "    w.append(optimizer.train())\n",
    "    optimizer.plot()\n",
    "\n",
    "print(\"\\nTraining finished!\")"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.3 Result\n",
    "\n",
    "Copy the optimal parameters for FSRS for you in the output of next code cell after running."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[1.3197, 1.9254, 5.0235, 1.2173, 1.0963, 0.0088, 1.4026, 0.0506, 0.7394, 1.703, 0.4643, 0.6148, 0.9267]\n"
     ]
    }
   ],
   "source": [
    "w = np.array(w)\n",
    "avg_w = np.round(np.mean(w, axis=0), 4)\n",
    "print(avg_w.tolist())"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.4 Preview\n",
    "\n",
    "You can see the memory states and intervals generated by FSRS as if you press the good in each review at the due date scheduled by FSRS."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1:again, 2:hard, 3:good, 4:easy\n",
      "\n",
      "first rating: 1\n",
      "rating history: 1,3,3,3,3,3,3,3,3,3,3\n",
      "interval history: 0,1,2,5,10,20,39,76,147,279,523\n",
      "difficulty history: 0,7.5,7.4,7.4,7.4,7.4,7.4,7.3,7.3,7.3,7.3\n",
      "\n",
      "first rating: 2\n",
      "rating history: 2,3,3,3,3,3,3,3,3,3,3\n",
      "interval history: 0,3,7,17,39,87,192,413,872,1807,3679\n",
      "difficulty history: 0,6.2,6.2,6.2,6.2,6.2,6.2,6.2,6.2,6.2,6.1\n",
      "\n",
      "first rating: 3\n",
      "rating history: 3,3,3,3,3,3,3,3,3,3,3\n",
      "interval history: 0,5,14,37,94,233,563,1325,3042,6823,14962\n",
      "difficulty history: 0,5.0,5.0,5.0,5.0,5.0,5.0,5.0,5.0,5.0,5.0\n",
      "\n",
      "first rating: 4\n",
      "rating history: 4,3,3,3,3,3,3,3,3,3,3\n",
      "interval history: 0,7,21,62,174,473,1245,3176,7869,18957,44472\n",
      "difficulty history: 0,3.8,3.8,3.8,3.8,3.8,3.9,3.9,3.9,3.9,3.9\n",
      "\n"
     ]
    }
   ],
   "source": [
    "requestRetention = 0.9  # recommended setting: 0.8 ~ 0.9\n",
    "\n",
    "\n",
    "class Collection:\n",
    "    def __init__(self, w):\n",
    "        self.model = FSRS(w)\n",
    "\n",
    "    def states(self, t_history, r_history):\n",
    "        with torch.no_grad():\n",
    "            line_tensor = lineToTensor(list(zip([t_history], [r_history]))[0])\n",
    "            output_t = [(self.model.zero, self.model.zero)]\n",
    "            for input_t in line_tensor:\n",
    "                output_t.append(self.model(input_t, *output_t[-1]))\n",
    "            return output_t[-1]\n",
    "\n",
    "\n",
    "my_collection = Collection(avg_w)\n",
    "print(\"1:again, 2:hard, 3:good, 4:easy\\n\")\n",
    "for first_rating in (1,2,3,4):\n",
    "    print(f'first rating: {first_rating}')\n",
    "    t_history = \"0\"\n",
    "    d_history = \"0\"\n",
    "    r_history = f\"{first_rating}\"  # the first rating of the new card\n",
    "    # print(\"stability, difficulty, lapses\")\n",
    "    for i in range(10):\n",
    "        states = my_collection.states(t_history, r_history)\n",
    "        # print('{0:9.2f} {1:11.2f} {2:7.0f}'.format(\n",
    "            # *list(map(lambda x: round(float(x), 4), states))))\n",
    "        next_t = max(round(float(np.log(requestRetention)/np.log(0.9) * states[0])), 1)\n",
    "        difficulty = round(float(states[1]), 1)\n",
    "        t_history += f',{int(next_t)}'\n",
    "        d_history += f',{difficulty}'\n",
    "        r_history += f\",3\"\n",
    "    print(f\"rating history: {r_history}\")\n",
    "    print(f\"interval history: {t_history}\")\n",
    "    print(f\"difficulty history: {d_history}\")\n",
    "    print('')"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "You can change the `test_rating_sequence` to see the scheduling intervals in different ratings."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(tensor(5.1705), tensor(5.0235))\n",
      "(tensor(13.7551), tensor(5.0235))\n",
      "(tensor(36.6121), tensor(5.0235))\n",
      "(tensor(94.1071), tensor(5.0235))\n",
      "(tensor(233.3886), tensor(5.0235))\n",
      "(tensor(21.3463), tensor(7.1968))\n",
      "(tensor(4.3385), tensor(9.3510))\n",
      "(tensor(6.2959), tensor(9.3129))\n",
      "(tensor(9.2401), tensor(9.2752))\n",
      "(tensor(13.6641), tensor(9.2377))\n",
      "(tensor(20.5472), tensor(9.2007))\n",
      "(tensor(30.8679), tensor(9.1639))\n",
      "rating history: 3,3,3,3,3,1,1,3,3,3,3,3\n",
      "interval history: 0,5,14,37,94,233,21,4,6,9,14,21,31\n",
      "difficulty history: 0,5.0,5.0,5.0,5.0,5.0,7.2,9.4,9.3,9.3,9.2,9.2,9.2\n"
     ]
    }
   ],
   "source": [
    "test_rating_sequence = \"3,3,3,3,3,1,1,3,3,3,3,3\"\n",
    "requestRetention = 0.9  # recommended setting: 0.8 ~ 0.9\n",
    "easyBonus = 1.3\n",
    "hardInterval = 1.2\n",
    "\n",
    "t_history = \"0\"\n",
    "d_history = \"0\"\n",
    "for i in range(len(test_rating_sequence.split(','))):\n",
    "    rating = test_rating_sequence[2*i]\n",
    "    last_t = int(t_history.split(',')[-1])\n",
    "    r_history = test_rating_sequence[:2*i+1]\n",
    "    states = my_collection.states(t_history, r_history)\n",
    "    print(states)\n",
    "    next_t = max(1,round(float(np.log(requestRetention)/np.log(0.9) * states[0])))\n",
    "    if rating == '4':\n",
    "        next_t = round(next_t * easyBonus)\n",
    "    elif rating == '2':\n",
    "        next_t = round(last_t * hardInterval)\n",
    "    t_history += f',{int(next_t)}'\n",
    "    difficulty = round(float(states[1]), 1)\n",
    "    d_history += f',{difficulty}'\n",
    "print(f\"rating history: {test_rating_sequence}\")\n",
    "print(f\"interval history: {t_history}\")\n",
    "print(f\"difficulty history: {d_history}\")"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.5 Predict memory states and distribution of difficulty\n",
    "\n",
    "Predict memory states for each review group and save them in [./prediction.tsv](./prediction.tsv).\n",
    "\n",
    "Meanwhile, it will count the distribution of difficulty."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "575018b6582b4531b039cd2ae9ca4748",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "  0%|          | 0/117599 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "prediction.tsv saved.\n",
      "difficulty\n",
      "1     0.001850\n",
      "2     0.010956\n",
      "3     0.039505\n",
      "4     0.154597\n",
      "5     0.161179\n",
      "6     0.066346\n",
      "7     0.132416\n",
      "8     0.054268\n",
      "9     0.059724\n",
      "10    0.319158\n",
      "Name: count, dtype: float64\n"
     ]
    }
   ],
   "source": [
    "def predict_memory_states(group):\n",
    "    states = my_collection.states(*group.name)\n",
    "    group['stability'] = float(states[0])\n",
    "    group['difficulty'] = float(states[1])\n",
    "    group['count'] = len(group)\n",
    "    return pd.DataFrame({\n",
    "        'r_history': [group.name[1]], \n",
    "        't_history': [group.name[0]], \n",
    "        'stability': [round(float(states[0]),2)], \n",
    "        'difficulty': [round(float(states[1]),2)], \n",
    "        'count': [len(group)] \n",
    "    })\n",
    "\n",
    "prediction = dataset.groupby(by=['t_history', 'r_history']).progress_apply(predict_memory_states)\n",
    "prediction.reset_index(drop=True, inplace=True)\n",
    "prediction.sort_values(by=['r_history'], inplace=True)\n",
    "prediction.to_csv(\"./prediction.tsv\", sep='\\t', index=None)\n",
    "print(\"prediction.tsv saved.\")\n",
    "prediction['difficulty'] = prediction['difficulty'].map(lambda x: int(round(x)))\n",
    "difficulty_distribution = prediction.groupby(by=['difficulty'])['count'].sum() / prediction['count'].sum()\n",
    "print(difficulty_distribution)\n",
    "difficulty_distribution_padding = np.zeros(10)\n",
    "for i in range(10):\n",
    "    if i+1 in difficulty_distribution.index:\n",
    "        difficulty_distribution_padding[i] = difficulty_distribution.loc[i+1]"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3 Optimize retention to minimize the time of reviews\n",
    "\n",
    "Calculate the optimal retention to minimize the time for long-term memory consolidation. It is an experimental feature. You can use the simulator to get more accurate results:\n",
    "\n",
    "https://github.com/open-spaced-repetition/fsrs4anki/blob/main/fsrs4anki_simulator.ipynb"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "average time for failed cards: 25.0s\n",
      "average time for recalled cards: 8.0s\n",
      "terminal stability:  100.18\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "a3a8c28663224d6987058ef03e936522",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "  0%|          | 0/15 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "expected_time.csv saved.\n",
      "\n",
      "-----suggested retention (experimental): 0.83-----\n"
     ]
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "base = 1.01\n",
    "index_len = 664\n",
    "index_offset = 200\n",
    "d_range = 10\n",
    "d_offset = 1\n",
    "r_time = 8\n",
    "f_time = 25\n",
    "max_time = 200000\n",
    "\n",
    "type_block = dict()\n",
    "type_count = dict()\n",
    "type_time = dict()\n",
    "last_t = type_sequence[0]\n",
    "type_block[last_t] = 1\n",
    "type_count[last_t] = 1\n",
    "type_time[last_t] = time_sequence[0]\n",
    "for i,t in enumerate(type_sequence[1:]):\n",
    "    type_count[t] = type_count.setdefault(t, 0) + 1\n",
    "    type_time[t] = type_time.setdefault(t, 0) + time_sequence[i]\n",
    "    if t != last_t:\n",
    "        type_block[t] = type_block.setdefault(t, 0) + 1\n",
    "    last_t = t\n",
    "\n",
    "r_time = round(type_time[1]/type_count[1]/1000, 1)\n",
    "\n",
    "if 2 in type_count and 2 in type_block:\n",
    "    f_time = round(type_time[2]/type_block[2]/1000 + r_time, 1)\n",
    "\n",
    "print(f\"average time for failed cards: {f_time}s\")\n",
    "print(f\"average time for recalled cards: {r_time}s\")\n",
    "\n",
    "def stability2index(stability):\n",
    "    return int(round(np.log(stability) / np.log(base)) + index_offset)\n",
    "\n",
    "def init_stability(d):\n",
    "    return max(((d - avg_w[2]) / -avg_w[3] + 2) * avg_w[1] + avg_w[0], np.power(base, -index_offset))\n",
    "\n",
    "def cal_next_recall_stability(s, r, d, response):\n",
    "    if response == 1:\n",
    "        return s * (1 + np.exp(avg_w[6]) * (11 - d) * np.power(s, -avg_w[7]) * (np.exp((1 - r) * avg_w[8]) - 1))\n",
    "    else:\n",
    "        return avg_w[9] * np.power(d, -avg_w[10]) * np.power(s, avg_w[11]) * np.exp((1 - r) * avg_w[12])\n",
    "\n",
    "\n",
    "stability_list = np.array([np.power(base, i - index_offset) for i in range(index_len)])\n",
    "print(f\"terminal stability: {stability_list.max(): .2f}\")\n",
    "df = pd.DataFrame(columns=[\"retention\", \"difficulty\", \"time\"])\n",
    "\n",
    "for percentage in notebook.tqdm(range(96, 66, -2)):\n",
    "    recall = percentage / 100\n",
    "    time_list = np.zeros((d_range, index_len))\n",
    "    time_list[:,:-1] = max_time\n",
    "    for d in range(d_range, 0, -1):\n",
    "        s0 = init_stability(d)\n",
    "        s0_index = stability2index(s0)\n",
    "        diff = max_time\n",
    "        while diff > 0.1:\n",
    "            s0_time = time_list[d - 1][s0_index]\n",
    "            for s_index in range(index_len - 2, -1, -1):\n",
    "                stability = stability_list[s_index];\n",
    "                interval = max(1, round(stability * np.log(recall) / np.log(0.9)))\n",
    "                p_recall = np.power(0.9, interval / stability)\n",
    "                recall_s = cal_next_recall_stability(stability, p_recall, d, 1)\n",
    "                forget_d = min(d + d_offset, 10)\n",
    "                forget_s = cal_next_recall_stability(stability, p_recall, forget_d, 0)\n",
    "                recall_s_index = min(stability2index(recall_s), index_len - 1)\n",
    "                forget_s_index = min(max(stability2index(forget_s), 0), index_len - 1)\n",
    "                recall_time = time_list[d - 1][recall_s_index] + r_time\n",
    "                forget_time = time_list[forget_d - 1][forget_s_index] + f_time\n",
    "                exp_time = p_recall * recall_time + (1.0 - p_recall) * forget_time\n",
    "                if exp_time < time_list[d - 1][s_index]:\n",
    "                    time_list[d - 1][s_index] = exp_time\n",
    "            diff = s0_time - time_list[d - 1][s0_index]\n",
    "        df.loc[0 if pd.isnull(df.index.max()) else df.index.max() + 1] = [recall, d, s0_time]\n",
    "\n",
    "df.sort_values(by=[\"difficulty\", \"retention\"], inplace=True)\n",
    "df.to_csv(\"./expected_time.csv\", index=False)\n",
    "print(\"expected_time.csv saved.\")\n",
    "\n",
    "optimal_retention_list = np.zeros(10)\n",
    "for d in range(1, d_range+1):\n",
    "    retention = df[df[\"difficulty\"] == d][\"retention\"]\n",
    "    time = df[df[\"difficulty\"] == d][\"time\"]\n",
    "    optimal_retention = retention.iat[time.argmin()]\n",
    "    optimal_retention_list[d-1] = optimal_retention\n",
    "    plt.plot(retention, time, label=f\"d={d}, r={optimal_retention}\")\n",
    "print(f\"\\n-----suggested retention (experimental): {np.inner(difficulty_distribution_padding, optimal_retention_list):.2f}-----\")\n",
    "plt.ylabel(\"expected time (second)\")\n",
    "plt.xlabel(\"retention\")\n",
    "plt.legend()\n",
    "plt.grid()\n",
    "plt.semilogy()\n",
    "plt.show()"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4 Evaluate the model"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 4.1 Loss\n",
    "\n",
    "Evaluate the model with the log loss. It will compare the log loss between initial model and trained model.\n",
    "\n",
    "And it will predict the stability, difficulty and retrievability for each revlog in [./evaluation.tsv](./evaluation.tsv)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "460f3ff264584b49aa46a47cec84a8c6",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "  0%|          | 0/223795 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Loss before training: 0.3403\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "be1c3fc41d2d4e07bf4d2208f32d0fe9",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "  0%|          | 0/223795 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Loss after training: 0.3168\n"
     ]
    }
   ],
   "source": [
    "my_collection = Collection(init_w)\n",
    "dataset['state'] = dataset.progress_apply(lambda row: my_collection.states(row['t_history'], row['r_history']), axis=1)\n",
    "dataset['stability'] = dataset['state'].apply(lambda x: x[0].item())\n",
    "dataset['difficulty'] = dataset['state'].apply(lambda x: x[1].item())\n",
    "del dataset['state']\n",
    "dataset['p'] = np.exp(np.log(0.9) * dataset['delta_t'] / dataset['stability'])\n",
    "dataset['log_loss'] = dataset.apply(lambda row: - np.log(row['p']) if row['y'] == 1 else - np.log(1 - row['p']), axis=1)\n",
    "print(f\"Loss before training: {dataset['log_loss'].mean():.4f}\")\n",
    "\n",
    "my_collection = Collection(avg_w)\n",
    "dataset['state'] = dataset.progress_apply(lambda row: my_collection.states(row['t_history'], row['r_history']), axis=1)\n",
    "dataset['stability'] = dataset['state'].apply(lambda x: x[0].item())\n",
    "dataset['difficulty'] = dataset['state'].apply(lambda x: x[1].item())\n",
    "del dataset['state']\n",
    "dataset['p'] = np.exp(np.log(0.9) * dataset['delta_t'] / dataset['stability'])\n",
    "dataset['log_loss'] = dataset.apply(lambda row: - np.log(row['p']) if row['y'] == 1 else - np.log(1 - row['p']), axis=1)\n",
    "print(f\"Loss after training: {dataset['log_loss'].mean():.4f}\")\n",
    "\n",
    "tmp = dataset.copy()\n",
    "tmp['stability'] = tmp['stability'].map(lambda x: round(x, 2))\n",
    "tmp['difficulty'] = tmp['difficulty'].map(lambda x: round(x, 2))\n",
    "tmp['p'] = tmp['p'].map(lambda x: round(x, 2))\n",
    "tmp['log_loss'] = tmp['log_loss'].map(lambda x: round(x, 2))\n",
    "tmp.rename(columns={\"r\": \"grade\", \"p\": \"retrievability\"}, inplace=True)\n",
    "tmp[['id', 'cid', 'review_date', 'r_history', 't_history', 'delta_t', 'grade', 'stability', 'difficulty', 'retrievability', 'log_loss']].to_csv(\"./evaluation.tsv\", sep='\\t', index=False)\n",
    "del tmp"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 4.2 Calibration graph\n",
    "\n",
    "1. FSRS predicts the stability and retention for each review.\n",
    "2. Reviews are grouped into 40 bins according to their predicted retention.\n",
    "3. Count the true retention of each bin.\n",
    "4. Plot (predicted retention, true retention) in the line graph.\n",
    "5. Plot (predicted retention, size of bin) in the bar graph.\n",
    "6. Combine these graphs to create the calibration graph.\n",
    "\n",
    "Ideally, the blue line should be aligned with the orange one. If the blue line is higher than the orange line, the FSRS underestimates the retention. When the size of reviews within a bin is small, actual retention may deviate largely, which is normal.\n",
    "\n",
    "R-squared (aka the coefficient of determination), is the proportion of the variation in the dependent variable that is predictable from the independent variable(s). The higher the R-squared, the better the model fits your data. For details, please see https://en.wikipedia.org/wiki/Coefficient_of_determination\n",
    "\n",
    "RMSE (root mean squared error) is the square root of the average of squared differences between prediction and actual observation. The lower the RMSE, the better the model fits your data. For details, please see https://en.wikipedia.org/wiki/Root-mean-square_deviation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "R-squared: 0.9229\n",
      "RMSE: 0.0176\n"
     ]
    },
    {
     "data": {
      "image/png": "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Vapk/be3t3eez1kYrr9eXuLs0aMHhmGwfv16QkND2b59O++++26O509KSgJg4cKFtGjRIts+Z2fLSIPJZKJt27Zs2bIFd3d32rdvT8OGDUlNTWX//v3s3LnTOozt7OxMdHQ0O3fu5Ouvv2bOnDm8+uqr7N69m+rVq9/eD0NEHI4SwMJgGLB3CWwcCxkp4FvJMrdftda3PFSkOJk6dSoRERE3DKFWqFCB2NhYDMOwLndXmHPVff/997Rt2xaAjIwM9u7da324oUmTJqxatYpq1arh4lLwX2llypQhODiYHTt20K7dPz32O3bsoHnz5rf3BvIYp4eHB3369GH58uU0atSIunXr0qRJkxzrBgYGEhwczPHjx296jyBY7gNcuHAh7u7uvPXWWzg5OdG2bVvefvttUlNTs/V4mkwmWrduTevWrRk/fjxVq1ZlzZo1REZG3t6bFxGHowTwdqVchnUjLSt7ANS6F3rPB+/ydg1LioeU5MRida3w8HD69+/Pe++9l217+/btuXDhAtOnT6dv375s3LiRL7/8kjJlytz2NQHmzp1L7dq1CQsL49133yU+Pt76ZOxzzz3HwoUL6devHy+//DIBAQEcPXqUFStWsGjRImtvWF6MHj2aqKgoatasSUREBB9//DExMTEsW7bstt9DXuPs378/3bt3Z//+/QwYMCDXc77xxhu88MILlC1bli5dupCamsqePXuIj4+3Jm3t27dn1KhRuLm5cdddd1m3vfTSS9x5553Wnsrdu3ezadMmOnXqRMWKFdm9ezcXLlwgLCzstt+7iDgeJYC349zPlomd446DyRnuGQ+tXtCQr+SJn58fkd0b2/yat2vixIl8+umn2baFhYXxwQcfMHnyZCZNmsQDDzzASy+9xIIFC277emDpeZw6dSoxMTHUqlWLzz//nPLlLX9kZfXajRkzhk6dOpGamkrVqlXp0qVLvlc9eeGFF7h06RIvvvgif/31F/Xq1ePzzz+ndu3at/0e8hrn3XffTUBAAEeOHKFfv365nvOpp57Cy8uLt99+m9GjR+Pt7U14eDgjR4601gkPD8fPz486depYH+ho3749mZmZ1vv/wNIDum3bNmbNmsXly5epWrUqM2bMoGvXrrf93kXE8SgBLAjDgB8XwVevQGYalLkD+i6GKi1ufazI/zg5OeVrVQ57WLJkyQ3bqlWrZn1I4VpDhw5l6NCh2ba98soruZ7r2ilKspw8eTLbtbLuLcwtGapduzarV6++6f6crpMTJycnoqKicn3aOS9D2ze73q3izIrh9OnTXL58+YYe1AkTJtww9+Cjjz7Ko48+muv54uLism2LiIjAMAwMwyAjI8Ma27p16244Pmu/s7OzdXg/P/Kz5GFh/IEiInmjBDC/Ui7B58/Dgf9aynW6Qq8PwMuxv8hFRK6XmZnJ+YQrmG4xTG5kZhLo51WgeyzzuuRh1lKFImIbSgDz48xe+OwJSPgDnFzh3jfgX8OgAH8Vi4g4ApOz8y3vk8y8zWsUhyUPRUobJYB5YRiwez58/TqY08GvCvRdAnfkPq+YiIiIiCNSAngrV+Lgv8Ph8HpLOawH3P8+ePrZNSwRERGRglICmJs/f7RM7HzpT3B2g05vQfMhGvKVAtO6qlJS6P+ySPGmBDAnZjPsmgObJoI5A/yrw4NLIDjC3pFJMZV1j1VaWhqenp52jkakYAzDIDPTckdgYmIimZmZJCUlceXKlRvq+vn55XsaHhGxHSWA10v+G9Y+C0e+spTr94Ees8GjcCa0ldLJxcUFLy8vLly4gKurq0N+MZrNZtLS0khJSXHI+EoTW7VFRkYGGWlpmG/xEIg5M5OUFEuP38XLV8nISCfu4gWOxaWx9vDxG+pnPdHr6NMciZRmSgCv9ccuWPkkJJ4FZ3foOhWaPqEhX7ltJpOJSpUqceLECf744w97h5MjwzC4evUqnp6eBZrvTQqPrdrCbDaTmJKOyZR7kmkYZhI9LGs2X76ajmEycfaKE7FGGbzL6P+KSHGkBBAsQ7473oVv3wIjE8rVsgz5BoXbOzIpQdzc3KhduzZpaWn2DiVH6enpbNu2jbZt2+Lq6mrvcEo1W7VFQkICX/9wCs9bzNF3NTmRfs2DAPhq9ylcvMqSiRI/keJMCWDSBVjzNBz71lJu+DDcNxPcfewbl5RITk5OeHh42DuMHDk7O5ORkYGHh4cSQDtzdnYmLS2NK1eu5Kktsu63y+uqG1n13dzcSE4HzLkPASenW/6AAbiSAd5K/kSKPYdIAOfOncvbb79NbGwsjRo1Ys6cOTRv3vym9T/77DNef/11Tp48Se3atZk2bRrdunXL/4VPbIdVT0FSLLh4Qre3ofFjGvIVEbtLTk5m9pc/4+Xrl2u9a++3y8uqG7o/T0qb/OYYpYXdE8BPP/2UyMhI5s+fT4sWLZg1axadO3fm8OHDVKxY8Yb6O3fupF+/fkyZMoXu3buzfPlyevXqxU8//USDBg3yfF3T7nlwaAEYZihfFx5aChXDCvOtiUgJld/1bfPTOwfg7e0NgKdP/lfQ0KobIv/Ib45Rmtg9AZw5cyZDhgzhiSeeAGD+/PmsX7+exYsXM3bs2Bvqz549my5dujB69GgAJk2aRHR0NO+//z7z58/P83VN388lzs0JGjwI904AF2+4bsF00FQGIrkp6kTIz88PoMiuUdCY8ru+bV5757KOeb5z3v+YFZGby2+OUZrYNQFMS0tj7969jBs3zrrNycmJjh07smvXrhyP2bVrF5GRkdm2de7cmbVr1+ZYPzU1ldTUVGv50qVLAPye4MJ/Ko7A7e8wWLEj5/hSrvBs58b4+/sDEB8fn6f3VdD6jnQNW8Tk4+PDxYsXOXnyJElJSUVyDUd83454DX9/f9LT07l48SIxMTG4uNz6V4O/vz/x8fHM+2ofbh5euda99rOU32OAIrnG7cZ0Kf7vbL9bcpJyJYk//viDy5cvEx8fn+djTp06RVxcHOcyXPD2zb39LNdwtV7j/OmTeHjd/B7m/Na/9hggX/Ud6RoFjenUKVORtcW1x4BjvW9HbO8z7pbP56VLlyhT5p+p2dzd3XF3d7/hmILkGKWKYUdnzpwxAGPnzp3Zto8ePdpo3rx5jse4uroay5cvz7Zt7ty5RsWKFXOsHxUVZQB66aWXXnrppVcJfEVFRRVajlGa2H0IuKiNGzcuW49hXFwc1atXZ//+/ZQtW9aOkUliYiL16tXjwIED+PrmPiwmRU/t4TjUFo5DbeE4Ll26RIMGDThx4kS2h5hy6v2TW7NrAli+fHmcnZ05f/58tu3nz58nKCgox2OCgoLyVf9mXcMhISHZupDF9i5fvgxA5cqV1RYOQO3hONQWjkNt4Tiyfv4BAQF5aouC5BiliV2fbnBzc6Np06Zs2rTJus1sNrNp0yZatmyZ4zEtW7bMVh8gOjr6pvVFRESk9ClIjlGa2H0IODIykoEDB9KsWTOaN2/OrFmzSE5Otj6x8/jjj1O5cmWmTJkCwIgRI2jXrh0zZszgvvvuY8WKFezZs4cFCxbY822IiIiIg7lVjlGa2T0BfPjhh7lw4QLjx48nNjaWiIgINm7cSGBgIACnTp3KNg1Lq1atWL58Oa+99hqvvPIKtWvXZu3atXmeA9Dd3Z2oqCjdM+AA1BaORe3hONQWjkNt4TgK0ha3yjFKM5NhGIa9gxARERER29EMxyIiIiKljBJAERERkVJGCaCIiIhIKaMEUERERKSUKZEJ4Ny5c6lWrRoeHh60aNGCH374Idf6n332GaGhoXh4eBAeHs6GDRtsFGnJl5+2WLhwIW3atMHf3x9/f386dux4y7aT/MnvZyPLihUrMJlM9OrVq2gDLEXy2xYJCQk899xzVKpUCXd3d+rUqaPfVYUkv20xa9Ys6tati6enJyEhIYwaNYqUlBQbRVtybdu2jR49ehAcHIzJZGLt2rW3PGbLli00adIEd3d3atWqxZIlS4o8zhLD3mvRFbYVK1YYbm5uxuLFi43ffvvNGDJkiOHn52ecP38+x/o7duwwnJ2djenTpxsHDhwwXnvtNcPV1dX49ddfbRx5yZPftnj00UeNuXPnGvv27TMOHjxoDBo0yChbtqxx+vRpG0deMuW3PbKcOHHCqFy5stGmTRujZ8+etgm2hMtvW6SmphrNmjUzunXrZnz33XfGiRMnjC1bthgxMTE2jrzkyW9bLFu2zHB3dzeWLVtmnDhxwvjqq6+MSpUqGaNGjbJx5CXPhg0bjFdffdVYvXq1ARhr1qzJtf7x48cNLy8vIzIy0jhw4IAxZ84cw9nZ2di4caNtAi7mSlwC2Lx5c+O5556zljMzM43g4GBjypQpOdZ/6KGHjPvuuy/bthYtWhjPPPNMkcZZGuS3La6XkZFh+Pr6GkuXLi2qEEuVgrRHRkaG0apVK2PRokXGwIEDlQAWkvy2xbx584waNWoYaWlptgqx1MhvWzz33HPG3XffnW1bZGSk0bp16yKNs7TJSwL48ssvG/Xr18+27eGHHzY6d+5chJGVHCVqCDgtLY29e/fSsWNH6zYnJyc6duzIrl27cjxm165d2eoDdO7c+ab1JW8K0hbXu3LlCunp6dkW/ZaCKWh7TJw4kYoVKzJ48GBbhFkqFKQtPv/8c1q2bMlzzz1HYGAgDRo0YPLkyWRmZtoq7BKpIG3RqlUr9u7dax0mPn78OBs2bKBbt242iVn+oe/v22P3lUAK08WLF8nMzLxhhu/AwEAOHTqU4zGxsbE51o+NjS2yOEuDgrTF9caMGUNwcPANH3DJv4K0x3fffcdHH31ETEyMDSIsPQrSFsePH+fbb7+lf//+bNiwgaNHjzJs2DDS09OJioqyRdglUkHa4tFHH+XixYvcddddGIZBRkYGQ4cO5ZVXXrFFyHKNm31/X758matXr+Lp6WmnyIqHEtUDKCXH1KlTWbFiBWvWrMHDw8Pe4ZQ6iYmJDBgwgIULF1K+fHl7h1Pqmc1mKlasyIIFC2jatCkPP/wwr776KvPnz7d3aKXOli1bmDx5Mh988AE//fQTq1evZv369UyaNMneoYnkS4nqASxfvjzOzs6cP38+2/bz588TFBSU4zFBQUH5qi95U5C2yPLOO+8wdepUvvnmGxo2bFiUYZYa+W2PY8eOcfLkSXr06GHdZjabAXBxceHw4cPUrFmzaIMuoQry2ahUqRKurq44Oztbt4WFhREbG0taWhpubm5FGnNJVZC2eP311xkwYABPPfUUAOHh4SQnJ/P000/z6quvZlu7XorWzb6/y5Qpo96/PChR/1Pd3Nxo2rQpmzZtsm4zm81s2rSJli1b5nhMy5Yts9UHiI6Ovml9yZuCtAXA9OnTmTRpEhs3bqRZs2a2CLVUyG97hIaG8uuvvxITE2N93X///XTo0IGYmBhCQkJsGX6JUpDPRuvWrTl69Kg1CQf4/fffqVSpkpK/21CQtrhy5coNSV5WYm4YRtEFKzfQ9/dtsvdTKIVtxYoVhru7u7FkyRLjwIEDxtNPP234+fkZsbGxhmEYxoABA4yxY8da6+/YscNwcXEx3nnnHePgwYNGVFSUpoEpJPlti6lTpxpubm7GypUrjXPnzllfiYmJ9noLJUp+2+N6egq48OS3LU6dOmX4+voaw4cPNw4fPmysW7fOqFixovHmm2/a6y2UGPlti6ioKMPX19f45JNPjOPHjxtff/21UbNmTeOhhx6y11soMRITE419+/YZ+/btMwBj5syZxr59+4w//vjDMAzDGDt2rDFgwABr/axpYEaPHm0cPHjQmDt3rqaByYcSlwAahmHMmTPHqFKliuHm5mY0b97c+P7776372rVrZwwcODBb/f/85z9GnTp1DDc3N6N+/frG+vXrbRxxyZWftqhataoB3PCKioqyfeAlVH4/G9dSAli48tsWO3fuNFq0aGG4u7sbNWrUMN566y0jIyPDxlGXTPlpi/T0dGPChAlGzZo1DQ8PDyMkJMQYNmyYER8fb/vAS5jNmzfn+B2Q9fMfOHCg0a5duxuOiYiIMNzc3IwaNWoYH3/8sc3jLq5MhqE+axEREZHSpETdAygiIiIit6YEUERERKSUUQIoIiIiUsooARQREREpZZQAioiIiJQySgBFREREShklgCIiIiKljBJAEXF4gwYNolevXtZy+/btGTlypM3j2LJlCyaTiYSEBJtfW0SkMCkBFJECGTRoECaTCZPJhJubG7Vq1WLixIlkZGQU+bVXr17NpEmT8lTX1klbtWrVrD8XLy8vwsPDWbRokU2uLSKSV0oARaTAunTpwrlz5zhy5AgvvvgiEyZM4O23386xblpaWqFdNyAgAF9f30I7X2GbOHEi586dY//+/Tz22GMMGTKEL7/80t5hiYhYKQEUkQJzd3cnKCiIqlWr8uyzz9KxY0c+//xz4J9h27feeovg4GDq1q0LwJ9//slDDz2En58fAQEB9OzZk5MnT1rPmZmZSWRkJH5+fpQrV46XX36Z61esvH4IODU1lTFjxhASEoK7uzu1atXio48+4uTJk3To0AEAf39/TCYTgwYNAsBsNjNlyhSqV6+Op6cnjRo1YuXKldmus2HDBurUqYOnpycdOnTIFmdufH19CQoKokaNGowZM4aAgACio6Pz8ZMVESlaSgBFpNB4enpm6+nbtGkThw8fJjo6mnXr1pGenk7nzp3x9fVl+/bt7NixAx8fH7p06WI9bsaMGSxZsoTFixfz3XffERcXx5o1a3K97uOPP84nn3zCe++9x8GDB/nwww/x8fEhJCSEVatWAXD48GHOnTvH7NmzAZgyZQr//ve/mT9/Pr/99hujRo3iscceY+vWrYAlUe3Tpw89evQgJiaGp556irFjx+br52E2m1m1ahXx8fG4ubnl61gRkSJliIgUwMCBA42ePXsahmEYZrPZiI6ONtzd3Y2XXnrJuj8wMNBITU21HvP//t//M+rWrWuYzWbrttTUVMPT09P46quvDMMwjEqVKhnTp0+37k9PTzfuuOMO67UMwzDatWtnjBgxwjAMwzh8+LABGNHR0TnGuXnzZgMw4uPjrdtSUlIMLy8vY+fOndnqDh482OjXr59hGIYxbtw4o169etn2jxkz5oZzXa9q1aqGm5ub4e3tbbi4uBiAERAQYBw5cuSmx4iI2JqLfdNPESnO1q1bh4+PD+np6ZjNZh599FEmTJhg3R8eHp6t5+vnn3/m6NGjN9y/l5KSwrFjx7h06RLnzp2jRYsW1n0uLi40a9bshmHgLDExMTg7O9OuXbs8x3306FGuXLnCvffem217WloajRs3BuDgwYPZ4gBo2bJlns4/evRoBg0axLlz5xg9ejTDhg2jVq1aeY5PRKSoKQEUkQLr0KED8+bNw83NjeDgYFxcsv9K8fb2zlZOSkqiadOmLFu27IZzVahQoUAxeHp65vuYpKQkANavX0/lypWz7XN3dy9QHNcqX748tWrVolatWnz22WeEh4fTrFkz6tWrd9vnFhEpDLoHUEQKzNvbm1q1alGlSpUbkr+cNGnShCNHjlCxYkVrgpT1Klu2LGXLlqVSpUrs3r3bekxGRgZ79+696TnDw8Mxm83We/eul9UDmZmZad1Wr1493N3dOXXq1A1xhISEABAWFsYPP/yQ7Vzff//9Ld/j9UJCQnj44YcZN25cvo8VESkqSgBFxGb69+9P+fLl6dmzJ9u3b+fEiRNs2bKFF154gdOnTwMwYsQIpk6dytq1azl06BDDhg3LdQ6/atWqMXDgQJ588knWrl1rPed//vMfAKpWrYrJZGLdunVcuHCBpKQkfH19eemllxg1ahRLly7l2LFj/PTTT8yZM4elS5cCMHToUI4cOcLo0aM5fPgwy5cvZ8mSJQV63yNGjOCLL75gz549BTpeRKSwKQEUEZvx8vJi27ZtVKlShT59+hAWFsbgwYNJSUmhTJkyALz44osMGDCAgQMH0rJlS3x9fendu3eu5503bx59+/Zl2LBhhIaGMmTIEJKTkwGoXLkyb7zxBmPHjiUwMJDhw4cDMGnSJF5//XWmTJlCWFgYXbp0Yf369VSvXh2AKlWqsGrVKtauXUujRo2YP38+kydPLtD7rlevHp06dWL8+PEFOl5EpLCZjJvdWS0iIiIiJZJ6AEVERERKGSWAIiIiIqWMEkARERGRUkYJoIiIiEgpowRQREREpJRRAigiIiJSyigBFBERESlllACKiIiIlDJKAEVERERKGSWAIiIiIqWMEkARERGRUkYJoIiIiEgp8/8BxSi8VCJiNBcAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from sklearn.metrics import mean_squared_error, r2_score\n",
    "\n",
    "\n",
    "# code from https://github.com/papousek/duolingo-halflife-regression/blob/master/evaluation.py\n",
    "def load_brier(predictions, real, bins=20):\n",
    "    counts = np.zeros(bins)\n",
    "    correct = np.zeros(bins)\n",
    "    prediction = np.zeros(bins)\n",
    "    for p, r in zip(predictions, real):\n",
    "        bin = min(int(p * bins), bins - 1)\n",
    "        counts[bin] += 1\n",
    "        correct[bin] += r\n",
    "        prediction[bin] += p\n",
    "    np.seterr(invalid='ignore')\n",
    "    prediction_means = prediction / counts\n",
    "    prediction_means[np.isnan(prediction_means)] = ((np.arange(bins) + 0.5) / bins)[np.isnan(prediction_means)]\n",
    "    correct_means = correct / counts\n",
    "    correct_means[np.isnan(correct_means)] = 0\n",
    "    size = len(predictions)\n",
    "    answer_mean = sum(correct) / size\n",
    "    return {\n",
    "        \"reliability\": sum(counts * (correct_means - prediction_means) ** 2) / size,\n",
    "        \"resolution\": sum(counts * (correct_means - answer_mean) ** 2) / size,\n",
    "        \"uncertainty\": answer_mean * (1 - answer_mean),\n",
    "        \"detail\": {\n",
    "            \"bin_count\": bins,\n",
    "            \"bin_counts\": list(counts),\n",
    "            \"bin_prediction_means\": list(prediction_means),\n",
    "            \"bin_correct_means\": list(correct_means),\n",
    "        }\n",
    "    }\n",
    "\n",
    "\n",
    "def plot_brier(predictions, real, bins=20):\n",
    "    brier = load_brier(predictions, real, bins=bins)\n",
    "    bin_prediction_means = brier['detail']['bin_prediction_means']\n",
    "    bin_correct_means = brier['detail']['bin_correct_means']\n",
    "    bin_counts = brier['detail']['bin_counts']\n",
    "    r2 = r2_score(bin_correct_means, bin_prediction_means, sample_weight=bin_counts)\n",
    "    rmse = np.sqrt(mean_squared_error(bin_correct_means, bin_prediction_means, sample_weight=bin_counts))\n",
    "    print(f\"R-squared: {r2:.4f}\")\n",
    "    print(f\"RMSE: {rmse:.4f}\")\n",
    "    plt.figure()\n",
    "    ax = plt.gca()\n",
    "    ax.set_xlim([0, 1])\n",
    "    ax.set_ylim([0, 1])\n",
    "    plt.grid(True)\n",
    "    plt.plot(bin_prediction_means, bin_correct_means, label='Actual Calibration')\n",
    "    plt.plot((0, 1), (0, 1), label='Perfect Calibration')\n",
    "    bin_count = brier['detail']['bin_count']\n",
    "    counts = np.array(bin_counts)\n",
    "    bins = (np.arange(bin_count) + 0.5) / bin_count\n",
    "    plt.legend(loc='upper center')\n",
    "    plt.xlabel('Predicted R')\n",
    "    plt.ylabel('Actual R')\n",
    "    plt.twinx()\n",
    "    plt.ylabel('Number of reviews')\n",
    "    plt.bar(bins, counts, width=(0.8 / bin_count), ec='k', lw=.2, alpha=0.5, label='Number of reviews')\n",
    "    plt.legend(loc='lower center')\n",
    "\n",
    "\n",
    "plot_brier(dataset['p'], dataset['y'], bins=40)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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Fi82fitVVVFV9X6aEEIIIYQQD8CAAQNISkrKV56SksKAAQMsbu+ekshvvvmGOnXqYGtri62tLXXq1GHhwoX30pQQQgghhHgAVFUt8BbVly5dwsXFxeL2LD6dPWHCBGbOnMmIESNMq5uHh4czatQoLl68yJQpUywOQgghhBBClIwGDRqgKAqKotC2bVt0upvpn16vJzIykg4dOljcrsVJ5Lx58/j666/p3bu3qezZZ5+lXr16jBgxQpJIIYQQQogyJG9W9qFDhwgNDcXR0dG0zdramkqVKtGjRw+L27U4iczJyaFRo0b5yp944glyc3MtDkAIIYQQQpSciRMnAlCpUiVeeukl032z75fF10T27duXefPm5StfsGABffr0KZaghBBCCCFE8erXrx+2trZkZ2dz6dIlLl68aPawlMUjkWCcWLNx40aaNWsGwO7du7l48SKvvPIKo0ePNtWbOXPmvTQvhBBCCCGK2enTpxk4cCC7du0yK8+bcFPii40fO3aMhg0bAnD27FkAPD098fT05NixY6Z6Bc3+EUIIIYQQpaN///7odDrWrFmDn5/ffedqFieRW7duva8DCiGEEEKIB+/QoUPs37+fGjVqFEt797XYuBBCCCGEeDjUqlWLa9euFVt7kkQKIYQQQjwGpk+fzttvv822bdu4fv06ycnJZg9L3dPEGiGEEEII8XBp164dAG3btjUrf2ATa4QQQgghxMOnuOe1FCmJbNiwIZs3b8bNzY0pU6bw1ltvYW9vX6yBCCGEEEKIkvP0008Xa3tFuiby5MmTpKWlATB58mRSU1OLNQghhBBCCFHy/vrrL15++WWaN2/O5cuXAfj222/ZuXOnxW0VaSQyODiYAQMG8OSTT6KqKp988onZfRdvNWHCBIuDEEIIIYQQJevnn3+mb9++9OnThwMHDpCVlQVAUlISU6dOZd26dRa1V6QkcsmSJUycOJE1a9agKAp//PEHOl3+XRVFkSRSCCGEEKIM+uijj5g/fz6vvPIKK1euNJW3aNGCjz76yOL2ipREVq9e3XQwjUbD5s2b8fb2tvhgQgghhBCidERERNCyZct85S4uLiQmJlrcnsXrRBoMBkkghRBCCCEeMr6+vpw5cyZf+c6dO6lcubLF7d3TEj9nz55l9uzZnDx5EjCugP7mm29SpUqVe2lOCCGEEEKUsMGDB/Pmm2+y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",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.ticker as ticker\n",
    "\n",
    "def to_percent(temp, position):\n",
    "    return '%1.0f' % (100 * temp) + '%'\n",
    "\n",
    "fig = plt.figure(1)\n",
    "ax1 = fig.add_subplot(111)\n",
    "ax2 = ax1.twinx()\n",
    "lns = []\n",
    "\n",
    "stability_calibration = pd.DataFrame(columns=['stability', 'predicted_retention', 'actual_retention'])\n",
    "stability_calibration = dataset[['stability', 'p', 'y']].copy()\n",
    "stability_calibration['bin'] = stability_calibration['stability'].map(lambda x: math.pow(1.2, math.floor(math.log(x, 1.2))))\n",
    "stability_group = stability_calibration.groupby('bin').count()\n",
    "\n",
    "lns1 = ax1.bar(x=stability_group.index, height=stability_group['y'], width=stability_group.index / 5.5,\n",
    "                ec='k', lw=.2, label='Number of predictions', alpha=0.5)\n",
    "ax1.set_ylabel(\"Number of predictions\")\n",
    "ax1.set_xlabel(\"Stability (days)\")\n",
    "ax1.semilogx()\n",
    "lns.append(lns1)\n",
    "\n",
    "stability_group = stability_calibration.groupby(by='bin').agg('mean')\n",
    "lns2 = ax2.plot(stability_group['y'], label='Actual retention')\n",
    "lns3 = ax2.plot(stability_group['p'], label='Predicted retention')\n",
    "ax2.set_ylabel(\"Retention\")\n",
    "ax2.set_ylim(0, 1)\n",
    "lns.append(lns2[0])\n",
    "lns.append(lns3[0])\n",
    "\n",
    "labs = [l.get_label() for l in lns]\n",
    "ax2.legend(lns, labs, loc='lower right')\n",
    "plt.grid(linestyle='--')\n",
    "plt.gca().yaxis.set_major_formatter(ticker.FuncFormatter(to_percent))\n",
    "plt.gca().xaxis.set_major_formatter(ticker.FormatStrFormatter('%d'))\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style type=\"text/css\">\n",
       "#T_f4125_row0_col0, #T_f4125_row0_col1, #T_f4125_row0_col2, #T_f4125_row0_col3, #T_f4125_row0_col4, #T_f4125_row0_col5, #T_f4125_row0_col6, #T_f4125_row0_col7, #T_f4125_row0_col8, #T_f4125_row1_col0, #T_f4125_row1_col1, #T_f4125_row1_col2, #T_f4125_row1_col3, #T_f4125_row1_col4, #T_f4125_row1_col5, #T_f4125_row1_col6, #T_f4125_row1_col7, #T_f4125_row1_col8, #T_f4125_row2_col0, #T_f4125_row2_col1, #T_f4125_row2_col2, #T_f4125_row2_col3, #T_f4125_row2_col4, #T_f4125_row2_col5, #T_f4125_row2_col6, #T_f4125_row2_col7, #T_f4125_row3_col0, #T_f4125_row3_col1, #T_f4125_row3_col2, #T_f4125_row3_col3, #T_f4125_row3_col4, #T_f4125_row3_col5, #T_f4125_row4_col0, #T_f4125_row4_col1, #T_f4125_row4_col2, #T_f4125_row4_col3, #T_f4125_row4_col4, #T_f4125_row4_col5, #T_f4125_row5_col0, #T_f4125_row5_col1, #T_f4125_row5_col2, #T_f4125_row5_col3, #T_f4125_row5_col4, #T_f4125_row6_col0, #T_f4125_row6_col1, #T_f4125_row6_col2, #T_f4125_row6_col3, #T_f4125_row7_col0, #T_f4125_row7_col1, #T_f4125_row7_col2, #T_f4125_row7_col3, #T_f4125_row8_col0, #T_f4125_row8_col1, #T_f4125_row8_col2, #T_f4125_row9_col0, #T_f4125_row9_col1, #T_f4125_row10_col0, #T_f4125_row11_col0, #T_f4125_row12_col0, #T_f4125_row20_col9, #T_f4125_row21_col8, #T_f4125_row21_col9, #T_f4125_row22_col0, #T_f4125_row22_col1, #T_f4125_row22_col6, #T_f4125_row22_col7, #T_f4125_row22_col8, #T_f4125_row22_col9, #T_f4125_row23_col2, #T_f4125_row23_col4, #T_f4125_row23_col5, #T_f4125_row23_col6, #T_f4125_row23_col7, #T_f4125_row23_col8, #T_f4125_row23_col9 {\n",
       "  background-color: #000000;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row0_col9, #T_f4125_row3_col7, #T_f4125_row10_col9, #T_f4125_row13_col9, #T_f4125_row18_col5 {\n",
       "  background-color: #ffcdcd;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row1_col9 {\n",
       "  background-color: #ff7d7d;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row2_col8 {\n",
       "  background-color: #ff6161;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row2_col9, #T_f4125_row12_col6, #T_f4125_row12_col7 {\n",
       "  background-color: #ffa9a9;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row3_col6 {\n",
       "  background-color: #ff6565;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row3_col8, #T_f4125_row5_col9, #T_f4125_row6_col9, #T_f4125_row16_col3, #T_f4125_row18_col4 {\n",
       "  background-color: #ededff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row3_col9, #T_f4125_row6_col7, #T_f4125_row7_col7, #T_f4125_row10_col5, #T_f4125_row21_col3 {\n",
       "  background-color: #ffeded;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row4_col6, #T_f4125_row13_col8, #T_f4125_row18_col6 {\n",
       "  background-color: #ffd5d5;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row4_col7, #T_f4125_row16_col8 {\n",
       "  background-color: #ffb1b1;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row4_col8, #T_f4125_row12_col2 {\n",
       "  background-color: #9d9dff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row4_col9, #T_f4125_row12_col4 {\n",
       "  background-color: #e1e1ff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row5_col5, #T_f4125_row11_col7, #T_f4125_row16_col6 {\n",
       "  background-color: #ffadad;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row5_col6, #T_f4125_row10_col8, #T_f4125_row11_col5, #T_f4125_row12_col5, #T_f4125_row12_col8, #T_f4125_row12_col9 {\n",
       "  background-color: #ffe5e5;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row5_col7, #T_f4125_row8_col6, #T_f4125_row13_col3, #T_f4125_row14_col3, #T_f4125_row15_col1, #T_f4125_row17_col7, #T_f4125_row20_col4 {\n",
       "  background-color: #cdcdff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row5_col8, #T_f4125_row15_col8 {\n",
       "  background-color: #ff7979;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row6_col4 {\n",
       "  background-color: #b1b1ff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row6_col5 {\n",
       "  background-color: #ff6969;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row6_col6, #T_f4125_row8_col5, #T_f4125_row8_col7, #T_f4125_row9_col2, #T_f4125_row9_col5, #T_f4125_row9_col7, #T_f4125_row9_col8 {\n",
       "  background-color: #fffdfd;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row6_col8, #T_f4125_row7_col8 {\n",
       "  background-color: #fff5f5;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row7_col4, #T_f4125_row9_col6, #T_f4125_row16_col4, #T_f4125_row17_col4, #T_f4125_row23_col3 {\n",
       "  background-color: #fdfdff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row7_col5, #T_f4125_row23_col0 {\n",
       "  background-color: #f1f1ff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row7_col6, #T_f4125_row8_col3, #T_f4125_row8_col4, #T_f4125_row9_col4, #T_f4125_row10_col4, #T_f4125_row18_col3 {\n",
       "  background-color: #c9c9ff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row7_col9, #T_f4125_row13_col4, #T_f4125_row14_col8, #T_f4125_row17_col3, #T_f4125_row19_col4 {\n",
       "  background-color: #fff1f1;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row8_col8, #T_f4125_row9_col3, #T_f4125_row15_col3, #T_f4125_row18_col2, #T_f4125_row20_col2 {\n",
       "  background-color: #d9d9ff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row8_col9, #T_f4125_row17_col6 {\n",
       "  background-color: #ffd9d9;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row9_col9 {\n",
       "  background-color: #ffe1e1;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row10_col1 {\n",
       "  background-color: #8181ff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row10_col2, #T_f4125_row11_col3, #T_f4125_row20_col8, #T_f4125_row21_col1 {\n",
       "  background-color: #a9a9ff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row10_col3, #T_f4125_row22_col5 {\n",
       "  background-color: #adadff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row10_col6, #T_f4125_row14_col6 {\n",
       "  background-color: #ffdddd;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row10_col7, #T_f4125_row14_col9 {\n",
       "  background-color: #ffbdbd;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row11_col1, #T_f4125_row19_col8 {\n",
       "  background-color: #5555ff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row11_col2, #T_f4125_row17_col1 {\n",
       "  background-color: #7d7dff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row11_col4 {\n",
       "  background-color: #e5e5ff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row11_col6, #T_f4125_row21_col5 {\n",
       "  background-color: #ffd1d1;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row11_col8, #T_f4125_row11_col9, #T_f4125_row17_col9 {\n",
       "  background-color: #ffe9e9;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row12_col1, #T_f4125_row19_col1 {\n",
       "  background-color: #7575ff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row12_col3 {\n",
       "  background-color: #b5b5ff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row13_col0 {\n",
       "  background-color: #3939ff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row13_col1 {\n",
       "  background-color: #6d6dff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row13_col2, #T_f4125_row16_col1, #T_f4125_row18_col8, #T_f4125_row21_col6 {\n",
       "  background-color: #9191ff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row13_col5, #T_f4125_row15_col6, #T_f4125_row16_col7 {\n",
       "  background-color: #ffc9c9;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row13_col6, #T_f4125_row20_col1 {\n",
       "  background-color: #ffa5a5;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row13_col7, #T_f4125_row16_col9 {\n",
       "  background-color: #ffa1a1;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row14_col0 {\n",
       "  background-color: #9c0000;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row14_col1 {\n",
       "  background-color: #8d8dff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row14_col2, #T_f4125_row17_col8 {\n",
       "  background-color: #b9b9ff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row14_col4, #T_f4125_row19_col3, #T_f4125_row23_col1 {\n",
       "  background-color: #f9f9ff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row14_col5 {\n",
       "  background-color: #ff8d8d;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row14_col7 {\n",
       "  background-color: #ff9191;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row15_col0 {\n",
       "  background-color: #4141ff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row15_col2 {\n",
       "  background-color: #bdbdff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row15_col4 {\n",
       "  background-color: #fff9f9;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row15_col5 {\n",
       "  background-color: #ffc1c1;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row15_col7, #T_f4125_row16_col5 {\n",
       "  background-color: #ff8181;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row15_col9, #T_f4125_row21_col2 {\n",
       "  background-color: #ff8585;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row16_col0 {\n",
       "  background-color: #8989ff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row16_col2 {\n",
       "  background-color: #ddddff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row17_col0 {\n",
       "  background-color: #5959ff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row17_col2 {\n",
       "  background-color: #c1c1ff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row17_col5 {\n",
       "  background-color: #ff9595;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row18_col0 {\n",
       "  background-color: #2d2dff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row18_col1 {\n",
       "  background-color: #7171ff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row18_col7 {\n",
       "  background-color: #f60000;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row18_col9, #T_f4125_row19_col9, #T_f4125_row21_col7 {\n",
       "  background-color: #800000;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row19_col0 {\n",
       "  background-color: #3131ff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row19_col2 {\n",
       "  background-color: #8585ff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row19_col5 {\n",
       "  background-color: #ff0505;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row19_col6 {\n",
       "  background-color: #ffb5b5;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row19_col7 {\n",
       "  background-color: #e20000;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row20_col0 {\n",
       "  background-color: #6565ff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row20_col3 {\n",
       "  background-color: #d5d5ff;\n",
       "  color: #000000;\n",
       "}\n",
       "#T_f4125_row20_col5 {\n",
       "  background-color: #ff4545;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row20_col6 {\n",
       "  background-color: #ff4949;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row20_col7 {\n",
       "  background-color: #ec0000;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row21_col0 {\n",
       "  background-color: #2525ff;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row21_col4 {\n",
       "  background-color: #ff4d4d;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row22_col2 {\n",
       "  background-color: #880000;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row22_col3 {\n",
       "  background-color: #ff7171;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "#T_f4125_row22_col4 {\n",
       "  background-color: #ff4141;\n",
       "  color: #f1f1f1;\n",
       "}\n",
       "</style>\n",
       "<table id=\"T_f4125\">\n",
       "  <thead>\n",
       "    <tr>\n",
       "      <th class=\"index_name level0\" >d_bin</th>\n",
       "      <th id=\"T_f4125_level0_col0\" class=\"col_heading level0 col0\" >1</th>\n",
       "      <th id=\"T_f4125_level0_col1\" class=\"col_heading level0 col1\" >2</th>\n",
       "      <th id=\"T_f4125_level0_col2\" class=\"col_heading level0 col2\" >3</th>\n",
       "      <th id=\"T_f4125_level0_col3\" class=\"col_heading level0 col3\" >4</th>\n",
       "      <th id=\"T_f4125_level0_col4\" class=\"col_heading level0 col4\" >5</th>\n",
       "      <th id=\"T_f4125_level0_col5\" class=\"col_heading level0 col5\" >6</th>\n",
       "      <th id=\"T_f4125_level0_col6\" class=\"col_heading level0 col6\" >7</th>\n",
       "      <th id=\"T_f4125_level0_col7\" class=\"col_heading level0 col7\" >8</th>\n",
       "      <th id=\"T_f4125_level0_col8\" class=\"col_heading level0 col8\" >9</th>\n",
       "      <th id=\"T_f4125_level0_col9\" class=\"col_heading level0 col9\" >10</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th class=\"index_name level0\" >s_bin</th>\n",
       "      <th class=\"blank col0\" >&nbsp;</th>\n",
       "      <th class=\"blank col1\" >&nbsp;</th>\n",
       "      <th class=\"blank col2\" >&nbsp;</th>\n",
       "      <th class=\"blank col3\" >&nbsp;</th>\n",
       "      <th class=\"blank col4\" >&nbsp;</th>\n",
       "      <th class=\"blank col5\" >&nbsp;</th>\n",
       "      <th class=\"blank col6\" >&nbsp;</th>\n",
       "      <th class=\"blank col7\" >&nbsp;</th>\n",
       "      <th class=\"blank col8\" >&nbsp;</th>\n",
       "      <th class=\"blank col9\" >&nbsp;</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row0\" class=\"row_heading level0 row0\" >0.360000</th>\n",
       "      <td id=\"T_f4125_row0_col0\" class=\"data row0 col0\" ></td>\n",
       "      <td id=\"T_f4125_row0_col1\" class=\"data row0 col1\" ></td>\n",
       "      <td id=\"T_f4125_row0_col2\" class=\"data row0 col2\" ></td>\n",
       "      <td id=\"T_f4125_row0_col3\" class=\"data row0 col3\" ></td>\n",
       "      <td id=\"T_f4125_row0_col4\" class=\"data row0 col4\" ></td>\n",
       "      <td id=\"T_f4125_row0_col5\" class=\"data row0 col5\" ></td>\n",
       "      <td id=\"T_f4125_row0_col6\" class=\"data row0 col6\" ></td>\n",
       "      <td id=\"T_f4125_row0_col7\" class=\"data row0 col7\" ></td>\n",
       "      <td id=\"T_f4125_row0_col8\" class=\"data row0 col8\" ></td>\n",
       "      <td id=\"T_f4125_row0_col9\" class=\"data row0 col9\" >1.97%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row1\" class=\"row_heading level0 row1\" >0.510000</th>\n",
       "      <td id=\"T_f4125_row1_col0\" class=\"data row1 col0\" ></td>\n",
       "      <td id=\"T_f4125_row1_col1\" class=\"data row1 col1\" ></td>\n",
       "      <td id=\"T_f4125_row1_col2\" class=\"data row1 col2\" ></td>\n",
       "      <td id=\"T_f4125_row1_col3\" class=\"data row1 col3\" ></td>\n",
       "      <td id=\"T_f4125_row1_col4\" class=\"data row1 col4\" ></td>\n",
       "      <td id=\"T_f4125_row1_col5\" class=\"data row1 col5\" ></td>\n",
       "      <td id=\"T_f4125_row1_col6\" class=\"data row1 col6\" ></td>\n",
       "      <td id=\"T_f4125_row1_col7\" class=\"data row1 col7\" ></td>\n",
       "      <td id=\"T_f4125_row1_col8\" class=\"data row1 col8\" ></td>\n",
       "      <td id=\"T_f4125_row1_col9\" class=\"data row1 col9\" >5.11%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row2\" class=\"row_heading level0 row2\" >0.710000</th>\n",
       "      <td id=\"T_f4125_row2_col0\" class=\"data row2 col0\" ></td>\n",
       "      <td id=\"T_f4125_row2_col1\" class=\"data row2 col1\" ></td>\n",
       "      <td id=\"T_f4125_row2_col2\" class=\"data row2 col2\" ></td>\n",
       "      <td id=\"T_f4125_row2_col3\" class=\"data row2 col3\" ></td>\n",
       "      <td id=\"T_f4125_row2_col4\" class=\"data row2 col4\" ></td>\n",
       "      <td id=\"T_f4125_row2_col5\" class=\"data row2 col5\" ></td>\n",
       "      <td id=\"T_f4125_row2_col6\" class=\"data row2 col6\" ></td>\n",
       "      <td id=\"T_f4125_row2_col7\" class=\"data row2 col7\" ></td>\n",
       "      <td id=\"T_f4125_row2_col8\" class=\"data row2 col8\" >6.10%</td>\n",
       "      <td id=\"T_f4125_row2_col9\" class=\"data row2 col9\" >3.42%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row3\" class=\"row_heading level0 row3\" >1.000000</th>\n",
       "      <td id=\"T_f4125_row3_col0\" class=\"data row3 col0\" ></td>\n",
       "      <td id=\"T_f4125_row3_col1\" class=\"data row3 col1\" ></td>\n",
       "      <td id=\"T_f4125_row3_col2\" class=\"data row3 col2\" ></td>\n",
       "      <td id=\"T_f4125_row3_col3\" class=\"data row3 col3\" ></td>\n",
       "      <td id=\"T_f4125_row3_col4\" class=\"data row3 col4\" ></td>\n",
       "      <td id=\"T_f4125_row3_col5\" class=\"data row3 col5\" ></td>\n",
       "      <td id=\"T_f4125_row3_col6\" class=\"data row3 col6\" >5.99%</td>\n",
       "      <td id=\"T_f4125_row3_col7\" class=\"data row3 col7\" >1.91%</td>\n",
       "      <td id=\"T_f4125_row3_col8\" class=\"data row3 col8\" >-0.64%</td>\n",
       "      <td id=\"T_f4125_row3_col9\" class=\"data row3 col9\" >0.64%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row4\" class=\"row_heading level0 row4\" >1.400000</th>\n",
       "      <td id=\"T_f4125_row4_col0\" class=\"data row4 col0\" ></td>\n",
       "      <td id=\"T_f4125_row4_col1\" class=\"data row4 col1\" ></td>\n",
       "      <td id=\"T_f4125_row4_col2\" class=\"data row4 col2\" ></td>\n",
       "      <td id=\"T_f4125_row4_col3\" class=\"data row4 col3\" ></td>\n",
       "      <td id=\"T_f4125_row4_col4\" class=\"data row4 col4\" ></td>\n",
       "      <td id=\"T_f4125_row4_col5\" class=\"data row4 col5\" ></td>\n",
       "      <td id=\"T_f4125_row4_col6\" class=\"data row4 col6\" >1.57%</td>\n",
       "      <td id=\"T_f4125_row4_col7\" class=\"data row4 col7\" >3.01%</td>\n",
       "      <td id=\"T_f4125_row4_col8\" class=\"data row4 col8\" >-3.87%</td>\n",
       "      <td id=\"T_f4125_row4_col9\" class=\"data row4 col9\" >-1.23%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row5\" class=\"row_heading level0 row5\" >1.960000</th>\n",
       "      <td id=\"T_f4125_row5_col0\" class=\"data row5 col0\" ></td>\n",
       "      <td id=\"T_f4125_row5_col1\" class=\"data row5 col1\" ></td>\n",
       "      <td id=\"T_f4125_row5_col2\" class=\"data row5 col2\" ></td>\n",
       "      <td id=\"T_f4125_row5_col3\" class=\"data row5 col3\" ></td>\n",
       "      <td id=\"T_f4125_row5_col4\" class=\"data row5 col4\" ></td>\n",
       "      <td id=\"T_f4125_row5_col5\" class=\"data row5 col5\" >3.24%</td>\n",
       "      <td id=\"T_f4125_row5_col6\" class=\"data row5 col6\" >1.00%</td>\n",
       "      <td id=\"T_f4125_row5_col7\" class=\"data row5 col7\" >-1.89%</td>\n",
       "      <td id=\"T_f4125_row5_col8\" class=\"data row5 col8\" >5.27%</td>\n",
       "      <td id=\"T_f4125_row5_col9\" class=\"data row5 col9\" >-0.65%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row6\" class=\"row_heading level0 row6\" >2.740000</th>\n",
       "      <td id=\"T_f4125_row6_col0\" class=\"data row6 col0\" ></td>\n",
       "      <td id=\"T_f4125_row6_col1\" class=\"data row6 col1\" ></td>\n",
       "      <td id=\"T_f4125_row6_col2\" class=\"data row6 col2\" ></td>\n",
       "      <td id=\"T_f4125_row6_col3\" class=\"data row6 col3\" ></td>\n",
       "      <td id=\"T_f4125_row6_col4\" class=\"data row6 col4\" >-3.05%</td>\n",
       "      <td id=\"T_f4125_row6_col5\" class=\"data row6 col5\" >5.93%</td>\n",
       "      <td id=\"T_f4125_row6_col6\" class=\"data row6 col6\" >0.07%</td>\n",
       "      <td id=\"T_f4125_row6_col7\" class=\"data row6 col7\" >0.71%</td>\n",
       "      <td id=\"T_f4125_row6_col8\" class=\"data row6 col8\" >0.44%</td>\n",
       "      <td id=\"T_f4125_row6_col9\" class=\"data row6 col9\" >-0.73%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row7\" class=\"row_heading level0 row7\" >3.840000</th>\n",
       "      <td id=\"T_f4125_row7_col0\" class=\"data row7 col0\" ></td>\n",
       "      <td id=\"T_f4125_row7_col1\" class=\"data row7 col1\" ></td>\n",
       "      <td id=\"T_f4125_row7_col2\" class=\"data row7 col2\" ></td>\n",
       "      <td id=\"T_f4125_row7_col3\" class=\"data row7 col3\" ></td>\n",
       "      <td id=\"T_f4125_row7_col4\" class=\"data row7 col4\" >-0.14%</td>\n",
       "      <td id=\"T_f4125_row7_col5\" class=\"data row7 col5\" >-0.47%</td>\n",
       "      <td id=\"T_f4125_row7_col6\" class=\"data row7 col6\" >-2.07%</td>\n",
       "      <td id=\"T_f4125_row7_col7\" class=\"data row7 col7\" >0.73%</td>\n",
       "      <td id=\"T_f4125_row7_col8\" class=\"data row7 col8\" >0.32%</td>\n",
       "      <td id=\"T_f4125_row7_col9\" class=\"data row7 col9\" >0.59%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row8\" class=\"row_heading level0 row8\" >5.380000</th>\n",
       "      <td id=\"T_f4125_row8_col0\" class=\"data row8 col0\" ></td>\n",
       "      <td id=\"T_f4125_row8_col1\" class=\"data row8 col1\" ></td>\n",
       "      <td id=\"T_f4125_row8_col2\" class=\"data row8 col2\" ></td>\n",
       "      <td id=\"T_f4125_row8_col3\" class=\"data row8 col3\" >-2.15%</td>\n",
       "      <td id=\"T_f4125_row8_col4\" class=\"data row8 col4\" >-2.13%</td>\n",
       "      <td id=\"T_f4125_row8_col5\" class=\"data row8 col5\" >0.11%</td>\n",
       "      <td id=\"T_f4125_row8_col6\" class=\"data row8 col6\" >-1.99%</td>\n",
       "      <td id=\"T_f4125_row8_col7\" class=\"data row8 col7\" >0.02%</td>\n",
       "      <td id=\"T_f4125_row8_col8\" class=\"data row8 col8\" >-1.44%</td>\n",
       "      <td id=\"T_f4125_row8_col9\" class=\"data row8 col9\" >1.49%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row9\" class=\"row_heading level0 row9\" >7.530000</th>\n",
       "      <td id=\"T_f4125_row9_col0\" class=\"data row9 col0\" ></td>\n",
       "      <td id=\"T_f4125_row9_col1\" class=\"data row9 col1\" ></td>\n",
       "      <td id=\"T_f4125_row9_col2\" class=\"data row9 col2\" >0.12%</td>\n",
       "      <td id=\"T_f4125_row9_col3\" class=\"data row9 col3\" >-1.55%</td>\n",
       "      <td id=\"T_f4125_row9_col4\" class=\"data row9 col4\" >-2.18%</td>\n",
       "      <td id=\"T_f4125_row9_col5\" class=\"data row9 col5\" >0.13%</td>\n",
       "      <td id=\"T_f4125_row9_col6\" class=\"data row9 col6\" >-0.02%</td>\n",
       "      <td id=\"T_f4125_row9_col7\" class=\"data row9 col7\" >0.04%</td>\n",
       "      <td id=\"T_f4125_row9_col8\" class=\"data row9 col8\" >0.07%</td>\n",
       "      <td id=\"T_f4125_row9_col9\" class=\"data row9 col9\" >1.21%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row10\" class=\"row_heading level0 row10\" >10.540000</th>\n",
       "      <td id=\"T_f4125_row10_col0\" class=\"data row10 col0\" ></td>\n",
       "      <td id=\"T_f4125_row10_col1\" class=\"data row10 col1\" >-4.88%</td>\n",
       "      <td id=\"T_f4125_row10_col2\" class=\"data row10 col2\" >-3.30%</td>\n",
       "      <td id=\"T_f4125_row10_col3\" class=\"data row10 col3\" >-3.17%</td>\n",
       "      <td id=\"T_f4125_row10_col4\" class=\"data row10 col4\" >-2.17%</td>\n",
       "      <td id=\"T_f4125_row10_col5\" class=\"data row10 col5\" >0.70%</td>\n",
       "      <td id=\"T_f4125_row10_col6\" class=\"data row10 col6\" >1.33%</td>\n",
       "      <td id=\"T_f4125_row10_col7\" class=\"data row10 col7\" >2.62%</td>\n",
       "      <td id=\"T_f4125_row10_col8\" class=\"data row10 col8\" >1.05%</td>\n",
       "      <td id=\"T_f4125_row10_col9\" class=\"data row10 col9\" >2.03%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row11\" class=\"row_heading level0 row11\" >14.760000</th>\n",
       "      <td id=\"T_f4125_row11_col0\" class=\"data row11 col0\" ></td>\n",
       "      <td id=\"T_f4125_row11_col1\" class=\"data row11 col1\" >-6.61%</td>\n",
       "      <td id=\"T_f4125_row11_col2\" class=\"data row11 col2\" >-5.14%</td>\n",
       "      <td id=\"T_f4125_row11_col3\" class=\"data row11 col3\" >-3.30%</td>\n",
       "      <td id=\"T_f4125_row11_col4\" class=\"data row11 col4\" >-1.04%</td>\n",
       "      <td id=\"T_f4125_row11_col5\" class=\"data row11 col5\" >1.06%</td>\n",
       "      <td id=\"T_f4125_row11_col6\" class=\"data row11 col6\" >1.73%</td>\n",
       "      <td id=\"T_f4125_row11_col7\" class=\"data row11 col7\" >3.14%</td>\n",
       "      <td id=\"T_f4125_row11_col8\" class=\"data row11 col8\" >0.86%</td>\n",
       "      <td id=\"T_f4125_row11_col9\" class=\"data row11 col9\" >0.82%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row12\" class=\"row_heading level0 row12\" >20.660000</th>\n",
       "      <td id=\"T_f4125_row12_col0\" class=\"data row12 col0\" ></td>\n",
       "      <td id=\"T_f4125_row12_col1\" class=\"data row12 col1\" >-5.33%</td>\n",
       "      <td id=\"T_f4125_row12_col2\" class=\"data row12 col2\" >-3.88%</td>\n",
       "      <td id=\"T_f4125_row12_col3\" class=\"data row12 col3\" >-2.84%</td>\n",
       "      <td id=\"T_f4125_row12_col4\" class=\"data row12 col4\" >-1.13%</td>\n",
       "      <td id=\"T_f4125_row12_col5\" class=\"data row12 col5\" >1.09%</td>\n",
       "      <td id=\"T_f4125_row12_col6\" class=\"data row12 col6\" >3.40%</td>\n",
       "      <td id=\"T_f4125_row12_col7\" class=\"data row12 col7\" >3.32%</td>\n",
       "      <td id=\"T_f4125_row12_col8\" class=\"data row12 col8\" >1.08%</td>\n",
       "      <td id=\"T_f4125_row12_col9\" class=\"data row12 col9\" >1.05%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row13\" class=\"row_heading level0 row13\" >28.930000</th>\n",
       "      <td id=\"T_f4125_row13_col0\" class=\"data row13 col0\" >-7.70%</td>\n",
       "      <td id=\"T_f4125_row13_col1\" class=\"data row13 col1\" >-5.69%</td>\n",
       "      <td id=\"T_f4125_row13_col2\" class=\"data row13 col2\" >-4.33%</td>\n",
       "      <td id=\"T_f4125_row13_col3\" class=\"data row13 col3\" >-2.00%</td>\n",
       "      <td id=\"T_f4125_row13_col4\" class=\"data row13 col4\" >0.57%</td>\n",
       "      <td id=\"T_f4125_row13_col5\" class=\"data row13 col5\" >2.14%</td>\n",
       "      <td id=\"T_f4125_row13_col6\" class=\"data row13 col6\" >3.56%</td>\n",
       "      <td id=\"T_f4125_row13_col7\" class=\"data row13 col7\" >3.69%</td>\n",
       "      <td id=\"T_f4125_row13_col8\" class=\"data row13 col8\" >1.65%</td>\n",
       "      <td id=\"T_f4125_row13_col9\" class=\"data row13 col9\" >1.99%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row14\" class=\"row_heading level0 row14\" >40.500000</th>\n",
       "      <td id=\"T_f4125_row14_col0\" class=\"data row14 col0\" >17.75%</td>\n",
       "      <td id=\"T_f4125_row14_col1\" class=\"data row14 col1\" >-4.52%</td>\n",
       "      <td id=\"T_f4125_row14_col2\" class=\"data row14 col2\" >-2.78%</td>\n",
       "      <td id=\"T_f4125_row14_col3\" class=\"data row14 col3\" >-1.88%</td>\n",
       "      <td id=\"T_f4125_row14_col4\" class=\"data row14 col4\" >-0.28%</td>\n",
       "      <td id=\"T_f4125_row14_col5\" class=\"data row14 col5\" >4.45%</td>\n",
       "      <td id=\"T_f4125_row14_col6\" class=\"data row14 col6\" >1.36%</td>\n",
       "      <td id=\"T_f4125_row14_col7\" class=\"data row14 col7\" >4.25%</td>\n",
       "      <td id=\"T_f4125_row14_col8\" class=\"data row14 col8\" >0.55%</td>\n",
       "      <td id=\"T_f4125_row14_col9\" class=\"data row14 col9\" >2.52%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row15\" class=\"row_heading level0 row15\" >56.690000</th>\n",
       "      <td id=\"T_f4125_row15_col0\" class=\"data row15 col0\" >-7.39%</td>\n",
       "      <td id=\"T_f4125_row15_col1\" class=\"data row15 col1\" >-2.01%</td>\n",
       "      <td id=\"T_f4125_row15_col2\" class=\"data row15 col2\" >-2.60%</td>\n",
       "      <td id=\"T_f4125_row15_col3\" class=\"data row15 col3\" >-1.43%</td>\n",
       "      <td id=\"T_f4125_row15_col4\" class=\"data row15 col4\" >0.29%</td>\n",
       "      <td id=\"T_f4125_row15_col5\" class=\"data row15 col5\" >2.36%</td>\n",
       "      <td id=\"T_f4125_row15_col6\" class=\"data row15 col6\" >2.08%</td>\n",
       "      <td id=\"T_f4125_row15_col7\" class=\"data row15 col7\" >4.85%</td>\n",
       "      <td id=\"T_f4125_row15_col8\" class=\"data row15 col8\" >5.26%</td>\n",
       "      <td id=\"T_f4125_row15_col9\" class=\"data row15 col9\" >4.80%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row16\" class=\"row_heading level0 row16\" >79.370000</th>\n",
       "      <td id=\"T_f4125_row16_col0\" class=\"data row16 col0\" >-4.68%</td>\n",
       "      <td id=\"T_f4125_row16_col1\" class=\"data row16 col1\" >-4.36%</td>\n",
       "      <td id=\"T_f4125_row16_col2\" class=\"data row16 col2\" >-1.33%</td>\n",
       "      <td id=\"T_f4125_row16_col3\" class=\"data row16 col3\" >-0.75%</td>\n",
       "      <td id=\"T_f4125_row16_col4\" class=\"data row16 col4\" >-0.05%</td>\n",
       "      <td id=\"T_f4125_row16_col5\" class=\"data row16 col5\" >4.95%</td>\n",
       "      <td id=\"T_f4125_row16_col6\" class=\"data row16 col6\" >3.17%</td>\n",
       "      <td id=\"T_f4125_row16_col7\" class=\"data row16 col7\" >2.17%</td>\n",
       "      <td id=\"T_f4125_row16_col8\" class=\"data row16 col8\" >3.08%</td>\n",
       "      <td id=\"T_f4125_row16_col9\" class=\"data row16 col9\" >3.67%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row17\" class=\"row_heading level0 row17\" >111.120000</th>\n",
       "      <td id=\"T_f4125_row17_col0\" class=\"data row17 col0\" >-6.52%</td>\n",
       "      <td id=\"T_f4125_row17_col1\" class=\"data row17 col1\" >-5.13%</td>\n",
       "      <td id=\"T_f4125_row17_col2\" class=\"data row17 col2\" >-2.44%</td>\n",
       "      <td id=\"T_f4125_row17_col3\" class=\"data row17 col3\" >0.55%</td>\n",
       "      <td id=\"T_f4125_row17_col4\" class=\"data row17 col4\" >-0.12%</td>\n",
       "      <td id=\"T_f4125_row17_col5\" class=\"data row17 col5\" >4.17%</td>\n",
       "      <td id=\"T_f4125_row17_col6\" class=\"data row17 col6\" >1.50%</td>\n",
       "      <td id=\"T_f4125_row17_col7\" class=\"data row17 col7\" >-1.94%</td>\n",
       "      <td id=\"T_f4125_row17_col8\" class=\"data row17 col8\" >-2.77%</td>\n",
       "      <td id=\"T_f4125_row17_col9\" class=\"data row17 col9\" >0.86%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row18\" class=\"row_heading level0 row18\" >155.570000</th>\n",
       "      <td id=\"T_f4125_row18_col0\" class=\"data row18 col0\" >-8.15%</td>\n",
       "      <td id=\"T_f4125_row18_col1\" class=\"data row18 col1\" >-5.53%</td>\n",
       "      <td id=\"T_f4125_row18_col2\" class=\"data row18 col2\" >-1.56%</td>\n",
       "      <td id=\"T_f4125_row18_col3\" class=\"data row18 col3\" >-2.10%</td>\n",
       "      <td id=\"T_f4125_row18_col4\" class=\"data row18 col4\" >-0.77%</td>\n",
       "      <td id=\"T_f4125_row18_col5\" class=\"data row18 col5\" >1.89%</td>\n",
       "      <td id=\"T_f4125_row18_col6\" class=\"data row18 col6\" >1.70%</td>\n",
       "      <td id=\"T_f4125_row18_col7\" class=\"data row18 col7\" >10.67%</td>\n",
       "      <td id=\"T_f4125_row18_col8\" class=\"data row18 col8\" >-4.31%</td>\n",
       "      <td id=\"T_f4125_row18_col9\" class=\"data row18 col9\" >26.87%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row19\" class=\"row_heading level0 row19\" >217.800000</th>\n",
       "      <td id=\"T_f4125_row19_col0\" class=\"data row19 col0\" >-8.11%</td>\n",
       "      <td id=\"T_f4125_row19_col1\" class=\"data row19 col1\" >-5.36%</td>\n",
       "      <td id=\"T_f4125_row19_col2\" class=\"data row19 col2\" >-4.70%</td>\n",
       "      <td id=\"T_f4125_row19_col3\" class=\"data row19 col3\" >-0.19%</td>\n",
       "      <td id=\"T_f4125_row19_col4\" class=\"data row19 col4\" >0.50%</td>\n",
       "      <td id=\"T_f4125_row19_col5\" class=\"data row19 col5\" >9.78%</td>\n",
       "      <td id=\"T_f4125_row19_col6\" class=\"data row19 col6\" >2.82%</td>\n",
       "      <td id=\"T_f4125_row19_col7\" class=\"data row19 col7\" >12.28%</td>\n",
       "      <td id=\"T_f4125_row19_col8\" class=\"data row19 col8\" >-6.69%</td>\n",
       "      <td id=\"T_f4125_row19_col9\" class=\"data row19 col9\" >93.99%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row20\" class=\"row_heading level0 row20\" >304.910000</th>\n",
       "      <td id=\"T_f4125_row20_col0\" class=\"data row20 col0\" >-6.04%</td>\n",
       "      <td id=\"T_f4125_row20_col1\" class=\"data row20 col1\" >3.57%</td>\n",
       "      <td id=\"T_f4125_row20_col2\" class=\"data row20 col2\" >-1.50%</td>\n",
       "      <td id=\"T_f4125_row20_col3\" class=\"data row20 col3\" >-1.65%</td>\n",
       "      <td id=\"T_f4125_row20_col4\" class=\"data row20 col4\" >-1.96%</td>\n",
       "      <td id=\"T_f4125_row20_col5\" class=\"data row20 col5\" >7.34%</td>\n",
       "      <td id=\"T_f4125_row20_col6\" class=\"data row20 col6\" >7.14%</td>\n",
       "      <td id=\"T_f4125_row20_col7\" class=\"data row20 col7\" >11.55%</td>\n",
       "      <td id=\"T_f4125_row20_col8\" class=\"data row20 col8\" >-3.38%</td>\n",
       "      <td id=\"T_f4125_row20_col9\" class=\"data row20 col9\" ></td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row21\" class=\"row_heading level0 row21\" >426.880000</th>\n",
       "      <td id=\"T_f4125_row21_col0\" class=\"data row21 col0\" >-8.47%</td>\n",
       "      <td id=\"T_f4125_row21_col1\" class=\"data row21 col1\" >-3.42%</td>\n",
       "      <td id=\"T_f4125_row21_col2\" class=\"data row21 col2\" >4.75%</td>\n",
       "      <td id=\"T_f4125_row21_col3\" class=\"data row21 col3\" >0.70%</td>\n",
       "      <td id=\"T_f4125_row21_col4\" class=\"data row21 col4\" >7.01%</td>\n",
       "      <td id=\"T_f4125_row21_col5\" class=\"data row21 col5\" >1.73%</td>\n",
       "      <td id=\"T_f4125_row21_col6\" class=\"data row21 col6\" >-4.26%</td>\n",
       "      <td id=\"T_f4125_row21_col7\" class=\"data row21 col7\" >97.65%</td>\n",
       "      <td id=\"T_f4125_row21_col8\" class=\"data row21 col8\" ></td>\n",
       "      <td id=\"T_f4125_row21_col9\" class=\"data row21 col9\" ></td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row22\" class=\"row_heading level0 row22\" >597.630000</th>\n",
       "      <td id=\"T_f4125_row22_col0\" class=\"data row22 col0\" ></td>\n",
       "      <td id=\"T_f4125_row22_col1\" class=\"data row22 col1\" ></td>\n",
       "      <td id=\"T_f4125_row22_col2\" class=\"data row22 col2\" >19.32%</td>\n",
       "      <td id=\"T_f4125_row22_col3\" class=\"data row22 col3\" >5.56%</td>\n",
       "      <td id=\"T_f4125_row22_col4\" class=\"data row22 col4\" >7.37%</td>\n",
       "      <td id=\"T_f4125_row22_col5\" class=\"data row22 col5\" >-3.21%</td>\n",
       "      <td id=\"T_f4125_row22_col6\" class=\"data row22 col6\" ></td>\n",
       "      <td id=\"T_f4125_row22_col7\" class=\"data row22 col7\" ></td>\n",
       "      <td id=\"T_f4125_row22_col8\" class=\"data row22 col8\" ></td>\n",
       "      <td id=\"T_f4125_row22_col9\" class=\"data row22 col9\" ></td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th id=\"T_f4125_level0_row23\" class=\"row_heading level0 row23\" >836.680000</th>\n",
       "      <td id=\"T_f4125_row23_col0\" class=\"data row23 col0\" >-0.51%</td>\n",
       "      <td id=\"T_f4125_row23_col1\" class=\"data row23 col1\" >-0.17%</td>\n",
       "      <td id=\"T_f4125_row23_col2\" class=\"data row23 col2\" ></td>\n",
       "      <td id=\"T_f4125_row23_col3\" class=\"data row23 col3\" >-0.15%</td>\n",
       "      <td id=\"T_f4125_row23_col4\" class=\"data row23 col4\" ></td>\n",
       "      <td id=\"T_f4125_row23_col5\" class=\"data row23 col5\" ></td>\n",
       "      <td id=\"T_f4125_row23_col6\" class=\"data row23 col6\" ></td>\n",
       "      <td id=\"T_f4125_row23_col7\" class=\"data row23 col7\" ></td>\n",
       "      <td id=\"T_f4125_row23_col8\" class=\"data row23 col8\" ></td>\n",
       "      <td id=\"T_f4125_row23_col9\" class=\"data row23 col9\" ></td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1720e16d0>"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "B_W_Metric_raw = dataset[['difficulty', 'stability', 'p', 'y']].copy()\n",
    "B_W_Metric_raw['s_bin'] = B_W_Metric_raw['stability'].map(lambda x: round(math.pow(1.4, math.floor(math.log(x, 1.4))), 2))\n",
    "B_W_Metric_raw['d_bin'] = B_W_Metric_raw['difficulty'].map(lambda x: int(round(x)))\n",
    "B_W_Metric = B_W_Metric_raw.groupby(by=['s_bin', 'd_bin']).agg('mean').reset_index()\n",
    "B_W_Metric['B-W'] = B_W_Metric['p'] - B_W_Metric['y']\n",
    "B_W_Metric_pivot = B_W_Metric.pivot(index=\"s_bin\", columns='d_bin', values='B-W')\n",
    "B_W_Metric_pivot.apply(pd.to_numeric).style.background_gradient(cmap='seismic', axis=None, vmin=-0.2, vmax=0.2).format(\"{:.2%}\", na_rep='')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<AxesSubplot: xlabel='d_bin'>"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "B_W_Metric_raw.groupby(by=['d_bin']).agg('count').reset_index().plot.bar(x='d_bin', y='p', legend=False)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "fsrs4anki",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.16"
  },
  "orig_nbformat": 4
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
